argparse模块
官方文档:https://docs.python.org/3/howto/argparse.html#introducing-positional-arguments
argparse 是一个命令行参数解析模块
parser = argparse.ArgumentParser() #创建参数分析器
parser.description = "" #命令说明信息
parser.add_argument("") #设置参数 可以指定type、help、choices、count
parser.parse_args()
测试文件test.py
import argparse # argparse 是一个命令行参数解析模块 # 官方文档https://docs.python.org/3/howto/argparse.html#introducing-positional-arguments parser = argparse.ArgumentParser() parser.description = "喂我两个数字,我就吐出他们的乘积" parser.add_argument("-a", "--ParA", help="我是A,请将我设置为整数型", type=int, choices=[0, 1, 2, 3]) parser.add_argument("-b", "--ParB", help="我是B,请将我设置为整数型", type=int, choices=[5, 6, 7, 8]) args = parser.parse_args() if args.ParA: print("我是参数A,我的值是{}".format(args.ParA)) if args.ParB: print("我是参数B,我的值是{}".format(args.ParB)) if args.ParB and args.ParA: print("嗯,好吃!积是", args.ParA*args.ParB)
执行代码测试:
python test.py -a 3 -b 5
python test.py --ParA 4 -b 5
python test.py --help
测试 action
import argparse parser = argparse.ArgumentParser() parser.add_argument("square", type=int, help="display a square of a given number") parser.add_argument("-v", "--verbosity", action="count", help="increase output verbosity") args = parser.parse_args() answer = args.square**2 # bugfix: replace == with >= if args.verbosity >= 2: print("the square of {} equals {}".format(args.square, answer)) elif args.verbosity >= 1: print("{}^2 == {}".format(args.square, answer)) else: print(answer)
执行:
python test.py 4
python test.py 4 -v
python test.py 4 --verbosity
python test.py 4 -vv
python test.py 4 -vvv
python test.py 4 -v --verbosity
本文来自博客园,作者:zk01,转载请注明原文链接:https://www.cnblogs.com/zhangxiaokui/p/14958064.html