可能我忽略了一些非常基本的东西。 我有一个函数Python中的线程错误
def execution(command):
os.system(command)
而另一功能
def start_this_thread():
server_thread = threading.Thread(target=execution, args=(exec_str))
server_thread.start()
我得到一个错误:
self.run()
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 483, in run
self.__target(*self.__args, **self.__kwargs)
TypeError: execution() takes exactly 1 argument (233 given)
Aparently字符串长度(命令)是长度233的??
因为当你想定义只有1个参数的元组时,你需要写(blabla,)not(blabla)。当你运行'threading.Thread(target = execution,args =(exec_str))'时,例如'exec_str' =='123'参数将等于'['1','2','3' ]'不''''123']' – 2013-03-07 08:43:46