我正在使用线程加速我的进程,但是它说我的线程不可调用。 代码:
thread1 = threading.Thread(target=next_word())
thread2 = threading.Thread(target=get_word())
thread1.start()
thread2.start()
错误是这样的:
线程Thread-1中的异常: 追溯(最近一次通话): _bootstrap_inner中的第914行“ C:\ Users \ Tom \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ threading.py”文件 self.run() 运行中的文件“ C:\ Users \ Tom \ AppData \ Local \ Programs \ Python \ Python35 \ lib \ threading.py”,行862 self._target(* self._args,** self._kwargs) TypeError:“ str”对象不可调用
如果您能提供全部帮助,那我将不知道我的代码有什么问题。我知道有两个错误,但是它们是相同的,因此通过修复一个,可以修复另一个。 预先谢谢你。
答案 0 :(得分:1)
应该为Thread
提供一个函数作为目标。
虽然next_word
是一个函数,但next_word()
不是。相反,它是函数的结果,可能是字符串。
所以发生了什么事,您的Thread
将调用next_word()()
,即"a string"()
显然没有意义,因为无法调用字符串,因此您的{{1} }。
修复:
TypeError: 'str' object is not callable