通过CMD运行Python脚本
我有以下文件:up.py 在此文件中:通过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无关。主函
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]