【发布时间】:2015-06-25 17:46:17
【问题描述】:
我有一个名为 genData 的小型 Python 脚本,其中包含一个函数 genWork,它接受 5 个参数。在另一个脚本中,我这样做了
from genData import genWork
然后调用函数 genWork(1, 2, 3, 4, 5)。这工作得很好,另一个脚本按预期运行。
然后我在 genData 文件中编辑了函数 genWork,它现在需要 7 个参数。我在另一个脚本中保留相同的导入行,并将函数用作 genWork(1, 2, 3, 4, 5, 6, 7)。我得到错误:
TypeError: genWork() takes exactly 5 arguments (7 given)
所以,我猜测 genData 脚本实际上并没有更新?我尝试删除创建的 .pyc 文件,但仍然遇到相同的错误。
【问题讨论】:
-
您在编辑文件后是否点击了保存?
-
您是否还检查了文件中某处是否有任何与
sys.argv相关的比较? -
@Bharadwaj 嗯,没有 'sys.argv' 内容,因为第二个脚本只是调用带有参数的函数,而不是从命令行获取参数。