Python线程模块无法识别参数
出于某种原因,即使给出了一个必需的参数,仍会抛出以下错误Python线程模块无法识别参数,python,multithreading,Python,Multithreading,出于某种原因,即使给出了一个必需的参数,仍会抛出以下错误 Traceback (most recent call last): File "C:\Users\josep_000\Desktop\test.py", line 53, in <module> a=threading.Thread(target=getin(),args=(aa)) TypeError: getin() missing 1 required positional argument:
Traceback (most recent call last):
File "C:\Users\josep_000\Desktop\test.py", line 53, in <module>
a=threading.Thread(target=getin(),args=(aa))
TypeError: getin() missing 1 required positional argument: 'var'
回溯(最近一次呼叫最后一次):
文件“C:\Users\josep\u 000\Desktop\test.py”,第53行,在
线程(target=getin(),args=(aa))
TypeError:getin()缺少1个必需的位置参数:“var”
删除getin()之后的括号。
:
当前,您的代码直接调用getin()
,而不是将其传递给线程
构造函数,以便从新线程的上下文中调用
另外,args
需要是一个元组。要创建单个元素元组,请在aa
之后添加逗号:
a = threading.Thread(target=getin, args=(aa,))
删除
getin()
后面的括号:
当前,您的代码直接调用getin()
,而不是将其传递给线程
构造函数,以便从新线程的上下文中调用
另外,args
需要是一个元组。要创建单个元素元组,请在aa
之后添加逗号:
a = threading.Thread(target=getin, args=(aa,))
Python接受可调用的对象作为目标
因此,当您执行此操作时,threading.Thread(target=getin(),args=(aa))。。理想情况下,您传递的是被调用的getin
的返回值,不带任何参数。由于getin
需要1个参数,因此这是一个错误
你应该像下面那样通过
threading.Thread(target=getin,args=(aa, ))
另外,Thread
类接受tuple
作为args
如果使用括号
而在Python
中没有任何逗号,则只需即可生成内给定的值……如果需要一个包含一个值的元组,则必须在元组内添加逗号
括号中没有任何逗号,表示一个包含空项的元组对象,如下所示
>>> a = ()
>>> a
()
>>> type(a)
<type 'tuple'>
>>> b = (1)
>>> type(b)
<type 'int'>
如果您需要一个具有一个值的元组,则必须在其内部添加一个逗号,如下所示
>>> c = (1,)
>>> type(c)
<type 'tuple'>
c=(1,)
>>>类型(c)
Python接受可调用的对象作为目标
因此,当您执行此操作时,threading.Thread(target=getin(),args=(aa))
。。理想情况下,您传递的是被调用的getin
的返回值,不带任何参数。由于getin
需要1个参数,因此这是一个错误
你应该像下面那样通过
threading.Thread(target=getin,args=(aa, ))
另外,Thread
类接受tuple
作为args
如果使用括号
而在Python
中没有任何逗号,则只需即可生成内给定的值……如果需要一个包含一个值的元组,则必须在元组内添加逗号
括号中没有任何逗号,表示一个包含空项的元组对象,如下所示
>>> a = ()
>>> a
()
>>> type(a)
<type 'tuple'>
>>> b = (1)
>>> type(b)
<type 'int'>
如果您需要一个具有一个值的元组,则必须在其内部添加一个逗号,如下所示
>>> c = (1,)
>>> type(c)
<type 'tuple'>
c=(1,)
>>>类型(c)
请发布您正在使用的代码。你的问题很可能会因为缺少一个可复制的例子而被关闭。有人正确地回答了这个问题,所以显然我给出了足够的细节。在任何情况下,我都不能共享任何代码。请发布您正在使用的代码。你的问题很可能会因为缺少一个可复制的例子而被关闭。有人正确地回答了这个问题,所以显然我给出了足够的细节。在任何情况下,我都不能为此共享任何代码。