from sys import argv
script, lira_cbt, [eur_hedge] = argv
if eur_hedge == None:
#Do x
else:
#Do y
Run Code Online (Sandbox Code Playgroud)
我希望它能够只使用lira_cbt作为参数(执行x),或者使用lira_cbt和eur_hedge(执行y)运行.可以用sys.argv实现吗?
var*_*unl 22
只需使用长度 sys.argv
if len(sys.argv) == 2:
# do X
else:
# do Y
Run Code Online (Sandbox Code Playgroud)
小智 7
如果这不仅仅是一个抛弃脚本的一部分,请考虑使用argparse http://docs.python.org/library/argparse.html
目前它将变得更加复杂,但它将帮助您记录程序接受的选项,并提供有用的错误消息,而不像用户可能不理解的"太多值解压缩".