argparse,argumentparse
1. 终端执行操作
python run.py
如果要在这段命令中添加其他代码呢?例如
python run.py 5 6
让他给我输出5*6的结果
2. sys
import sys
# 假设终端输入python run.py 5 6
print(sys.argv) # 输出['test.py', '5', '6']
print(int(sys.argv[1]) * int(sys.argv[2])) # 输出30
但是如果换了别的输入方式,例如输入
python run.py --a=5 --b=6
如果想换成计算除法,又需要考虑提示词放前还是放后,写判断的问题,非常麻烦
这里引入argparase
3. argpase
专门处理命令行的library:argparse
如果不知道怎么用,可以python run.py --help
- 添加optional argument参数,有 add_argument("--a",type=int, help="xxx")
默认是可选择的,可以不填写 - 添加positional argument,有add_argument("a",type=int, help="xxx")
默认是必须填写的,否则报错 - 添加flags,标记,开关那种形式,action argument
比如说,添加一个参数,是否需要打印信息,--verbose表示打印详细信息
import argparse
# 1.先创建解释器
parser = argparse.ArgumentParser()
# 同样实现操作a*b, help是备注
parser.add_argument("--a", type=int, default=5, help="operator A")
parser.add_argument("--b", type=int, default=6, help="operator B")
parser.add_argument("method", type=str, help="Method")
parser.add_argument("--verbose", action="store_true", help="Print Message")
# 解析命令行
args = parser.parse_args()
print(args.a * args.b)
标签:argparse,help,--,py,argument,int,add
From: https://www.cnblogs.com/ratillase/p/18107273