Skip to main content
 首页 » 编程设计

Python 线程模块无法识别 args

2025年05月04日1652php

由于某种原因,即使给出了一个必需的参数,也会抛出以下错误。

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' 

请您参考如下方法:

python threading.Thread接受 callable 对象作为目标。

所以当你这样做时被调用没有参数。由于 getin 需要 1 个参数,这是一个错误。

你应该像下面这样通过...

threading.Thread(target=getin,args=(aa, )) 

此外,Thread 类接受 tuple 作为 args...

当你在 Python 中使用没有任何逗号的 parentheses 时,只是 yields 里面给定的值....如果你需要一个包含一个的元组您必须在其中添加 comma 的值。

里面没有任何逗号的圆括号给你一个tuple object 空项目如下..

>>> a = () 
>>> a 
() 
>>> type(a) 
<type 'tuple'> 

如果你使用圆括号,里面只有一个值,没有任何逗号,你最终会得到如下的结果。

>>> b = (1) 
>>> type(b) 
<type 'int'> 

如果您需要一个具有一个值的元组,您必须在其中添加一个逗号...如下所示。

>>> c = (1,) 
>>> type(c) 
<type 'tuple'>