我正试图给导入的函数提供一个参数。
我有:

import sc1 #import sc1.py
from threading import Thread

Thread(target=sc1.main,args="John").start()

以及base.py中的函数:
def main(name):
    print "Hello ",name


TypeError:main()只接受1个参数(给定4个)
如果我只给一个sc1.py,那就可以了,
有人知道我能做什么吗?

最佳答案

要传递一组参数:

Thread(target=sc1.main,args=("John",)).start()

在您的例子中,由于str是可iterable的,Thread试图将"J" "o", "h", "n"作为参数解包,而不是将整个东西作为原子单元传递。

10-04 10:57