考虑以下Python脚本script.py:import argparseparser = argparse.ArgumentParser()parser.add_argument('-a', type=int)parser.add_argument('-b', type=int)args = parser.parse_args()print('a + b = {}'.format(args.a + args.b))还有以下shell脚本Runner.sh:python3 script.py我知道我可以像这样运行script.py$ python3 script.py -a 4 -b 6来获得以下结果:a + b = 10,但我想script.py从shell脚本中运行,并能够通过-a和-b,如下所示:./runner.sh -a 4 -b 6。但是,当我尝试此操作时,不会传递这些参数:$ ./runner.sh -a 10 -b 6Traceback (most recent call last): File "script.py", line 10, in <module> print('a + b = {}'.format(args.a + args.b))TypeError: unsupported operand type(s) for +: 'NoneType' and 'NoneType'如何将参数传递给包装在Shell脚本中的Python脚本?对于它的价值,我也尝试了sys.argv,但没有成功。
添加回答
举报
0/150
提交
取消