argparse是一个用来解析命令行参数的 Python 库,它是 Python 标准库的一部分。argparse 模块使编写用户友好的命令行界面变得容易。程序定义了所需的参数,而 argparse 将找出如何从 sys.argv (命令行)中解析这些参数。argparse 模块还会自动生成帮助和使用消息,并在用户为程序提供无效参数时发出错误。
三步法
-
构造解析器
parser = argparse.ArgumentParser(description='caculateing the area of rectangle')
-
添加参数
parser.add_argument('--length', type=int, default=10, help='长方形的长(类型int)') parser.add_argument('--width', type=int, default=5, help='长方形的宽(类型int)')
-
解析参数
args = parser.parse_args() result = args.length * args.width print('长方形的面积是:',result)
位置参数
parser.add_argument("some")
args = parser.parse_args()
print(args.some)
指定参数类型
parser.add_argument("square", help="返回值的平方", type=int)
args = parser.parse_args()
print(args.square ** 2)
可选参数
parser.add_argument("--v", help="可选参数")
args = parser.parse_args()
if args.v:
print('传入了参数v')
action选项
parser.add_argument("--v", help="可选参数", action="store_true")
args = parser.parse_args()
if args.v:
print('传入了参数v')
短选项
parser.add_argument("-s","--square", help="返回值的平方", type=int)
可选选项
parser.add_argument("-v", help="可选参数", type=int, choices=[1,2,3])
count选项
parser.add_argument("-v", action="count")