繁体   English   中英

通过CMD运行Python脚本

[英]Run Python script via CMD

我有以下文件: up.py

在此文件中:

def main(a_param, b_param, c_param):
    // Code
if __name__ == '__main__':
    exit(main())

我想通过CMD运行此python文件,因此我编写了这一行:

python up.py False True False

但是我得到了下一个错误:

TypeError: main() takes exactly 3 arguments (0 given)

这与CMD无关。 您的main函数需要三个参数,但是您没有传递任何参数。 您可以直接从if __name__ == '__main__'块直接调用它,只需main()

在该块中获取参数(例如,从sys.argv )并将其传递给main,或者从函数签名中删除参数并将其获取到main中。

您正在尝试不带参数事件的情况下调用main函数,尽管它需要3( a_paramb_paramc_param )。

命令行参数存储在sys.argv 要使用前三个命令行参数调用main函数,您可以这样做:

import sys

if __name__ == '__main__':
    main(*sys.argv[1:4])

为了清楚起见, *解压缩参数列表,以便main(*sys.argv[1:4])等同于main(sys.argv[1], sys.argv[2], sys.argv[3])

该代码对我有用

def main(a_param, b_param, c_param):
    # Code
    if __name__ == '__main__':
        exit(main())

然后:

$ python up.py False True False

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM