赞
踩
先来看这段代码:
import threading
import time
def worker():
print “worker”
time.sleep(1)
return
for i in xrange(5):
t = threading.Thread(target=worker)
t.start()
这段代码就使用了多线程,但是没法传递参数,而实际使用多线程,往往是需要传递参数的,于是问了一位群里的网友后,知道可以这么写实现传递参数的多线程:
import threading
import time
def worker(number):
print “worker”
time.sleep(number)
return
for i in xrange(5):
t = threading.Thread(target=worker,args=(i,))
t.start()
第一个参数是函数名,第二个参数args是一个元组,如果只传递一个值,就只需要i, 如果需要传递多个参数,那么还可以继续传递下去其他的参数。特别注意其中的逗号不能少,少了就不是元组了,就会报错。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。