我不知道这是否只是一个新手的错误,但是Python并没有认识到我所有的论点。我正在使用bash,所以可能这就是问题所在。我有一个名为-vs的工作参数,我试图让它在它后面检测一个必要的整数,因此适当的语法是program.py -vs 5
,或者某个整数。但是,它不承认“5”。当我把破折号(-)放在它旁边,让它以一个字母开头时,它就会这样。我怎样才能让Python看到这个?你知道吗
下面是代码片段:
elif arg == "-vs" or "--vertical-spacing":
if int(sys.argv[argnum + 1]) >= 0:
vspacing = int(sys.argv[argnum + 1])
else:
print "Invalid Spacing: Less than zero (Ya can't have negative spacing, silly!)"
sys.exit()
顺便说一下,每当我循环这些参数时,argnum变量都会增加1。(我使用的是for arg in sys.argv[1:]
。不用担心,我将argnum启动为0,循环时首先递增argnum,这样它就看不到程序路径和/或名称,或者sys.argv[0]
。你知道吗
下面是一个使用argparse的示例:
相关问题 更多 >
编程相关推荐