我有一个用于测试argparse
模块功能的代码:
import argparse
parser = argparse.ArgumentParser()
parser.description='give me two number, I will return the product'
parser.add_argument("-a","--ParA", help="I am A",type=int)
parser.add_argument("-b","--ParB", help="I am B",type=int)
args = parser.parse_args()
if args.ParA:
print("A is: ",args.ParA)
if args.ParB:
print("B is:",args.ParB)
if args.ParA and args.ParB:
print("the product is: ",args.ParA*args.ParB)
print('over.')
但是当我在PyCharm中运行它时,只打印over.
答案 0 :(得分:1)
PyCharm在运行脚本时不会将参数传递给脚本。并且您已将两个参数定义为可选。
如果要从pycharm运行,则需要编辑运行配置以传递参数。
转到test1
(右上角)->编辑配置->参数(文本框)
然后在此处添加参数。
-a 3 -b 2
然后保存配置并运行它。
答案 1 :(得分:0)
这是因为您运行的python文件没有传递任何参数。
您不应该直接运行它。
您可以在这样的终端中运行它:
$ python3 test11.py -a 1 -b 123