所有人
我有一个我想写的个人脚本,但我遇到了一个小问题。问题是我希望能够支持一个'-s'参数,不管这个参数在哪里。我也希望这个论点被允许不止一次。例如:
在脚本.py第一个参数第二个参数-s第三个参数-s第四个第五个参数-s第六个参数
我试过的都没用。我试过以下方法:
currentArg = 1
foldername = sys.argv[1:]
for folders in foldername:
if "-s" in folders:
newArg = currentArg + 1
setType = str(sys.argv[newArg])
function(setType)
它所做的是将-s作为参数,并将其传递给函数。我想让它在上面看到第一个'-s'在第四个位置,加上1到4,然后setType被设置为系统argv[5] 一。我还希望它继续循环遍历参数并找到任何'-s',然后使用下一个参数作为值。有什么想法吗?在
我得到的错误是:
^{pr2}$请注意,它将-s视为参数,并尝试将其作为文件夹传递,但我希望它将下一个参数作为文件夹传递。。。在
有更好的方法吗?我需要把所有的“-s”都考虑进去。。。在
参见其他解决方案:
运行它:
^{pr2}$好的练习能得到你想要的结果。例如: input=['some','input','data'] output=['some','correct','output']
argparse很漂亮。重新设计命令行界面,或者编写自己的CLI解析器。CLI示例:
执行结果:
^{pr2}$首先要说的是:
相关问题 更多 >
编程相关推荐