在run函数中访问线程构造函数的变量,可以通过以下几种方式实现:
import threading
class MyThread(threading.Thread):
def __init__(self, my_variable):
threading.Thread.__init__(self)
self.my_variable = my_variable
def run(self):
# 在run函数中访问self.my_variable
print(self.my_variable)
# 创建线程并传递变量
my_variable = "Hello, World!"
my_thread = MyThread(my_variable)
my_thread.start()
import threading
class MyThread(threading.Thread):
def __init__(self):
threading.Thread.__init__(self)
def run(self):
# 在run函数中访问self.my_variable
print(self.my_variable)
# 创建线程并设置属性
my_thread = MyThread()
my_thread.my_variable = "Hello, World!"
my_thread.start()
import threading
class MyThread(threading.Thread):
def __init__(self, my_variable):
threading.Thread.__init__(self)
self.my_variable = my_variable
def run(self):
# 定义闭包函数
def inner_func(variable):
# 在闭包函数中访问变量
print(variable)
# 调用闭包函数并传递变量
inner_func(self.my_variable)
# 创建线程并传递变量
my_variable = "Hello, World!"
my_thread = MyThread(my_variable)
my_thread.start()
以上是几种常见的方法,可以在run函数中访问线程构造函数的变量。具体选择哪种方法取决于实际需求和代码结构。
领取专属 10元无门槛券
手把手带您无忧上云