Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过CMD运行Python脚本_Python - Fatal编程技术网

通过CMD运行Python脚本

通过CMD运行Python脚本,python,Python,我有以下文件: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无关。主函

我有以下文件: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无关。主函数需要三个参数,但没有传递任何参数;直接从if uuu name_uuuu='\uuuuu main_uuuu'块调用它,只需使用main

要么从该块中的sys.argv获取参数,并将其传递给main,要么从函数签名中删除参数,并在main中获取它们。

这段代码适合我

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


$python up.py False-True-False

您正在尝试调用不带参数的主函数事件,尽管它需要3个a_参数、b_参数和c_参数

命令行参数存储在sys.argv中。要使用前3个命令行参数调用main函数,可以执行以下操作:

import sys

if __name__ == '__main__':
    main(*sys.argv[1:4])
为了澄清,*解压参数列表,使main*sys.argv[1:4]等效于mainsys.argv[1]、sys.argv[2]、sys.argv[3]