【问题标题】:How to call a method via a variable in threading?如何通过线程中的变量调用方法?
【发布时间】:2017-08-06 18:48:16
【问题描述】:

我在 Python 中使用线程类... 变量 device 是一个对象列表。我是否能够以某种方式将变量的“字符串”转换为线程类可以理解的方法?

def thread():
    var_string = 'some_func'
    index = 0
    some_thread = threading.Thread(target=device[index].<var_string> , args=())

所以本质上,我想打电话给device[index].somefunc()

任何帮助将不胜感激!

【问题讨论】:

    标签: python multithreading class variables python-multithreading


    【解决方案1】:

    我设法让它按预期工作......

    我像这样使用getattr()函数:

    var_string = 'some_func'
    some_thread = threading.Thread(target=getattr(ntw_device[index], var_string), args=()) 
    

    【讨论】:

      【解决方案2】:
      target=getattr(device[index], var_string)
      

      【讨论】:

        猜你喜欢
        • 2014-08-30
        • 2018-06-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-08-17
        • 2011-06-08
        • 2018-07-28
        • 1970-01-01
        相关资源
        最近更新 更多