这就是我尝试过的。我不完全确定该怎么做,所以这就是我所拥有的。我刚刚收到一个错误,上面写着“functiona() 需要 1 个位置参数,但给出了 9 个”任何人都可以帮忙吗?我对 python 还很陌生
import multiprocessing
def functiona(inputvariable):
print(inputvariable)
def functionb():
inputvariable = input('')
processes = []
for x in range(2):
p = multiprocessing.Process(target=functiona, args=inputvariable)
p.start()
processes.append(p)
for p in processes:
p.join()
Run Code Online (Sandbox Code Playgroud)
问题是你的args论据Process()。args应该是一个元组,而不是单个对象。如所写:
p = multiprocessing.Process(target=functiona, args=inputvariable)
Run Code Online (Sandbox Code Playgroud)
它会导致inputvariable作为字符串的各个字符进行迭代,从而导致functiona()接收多个参数而不是仅一个。
您应该指定args为元组。由于您只有一个参数,因此必须确保在输入时添加一个逗号,如下所示:
p = multiprocessing.Process(target=functiona, args=(inputvariable,))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
443 次 |
| 最近记录: |