python 的命令行参数使用ArgumentParser

yanmay / 2023-07-12 / 原文

 argparse是一个python模块,用途是:命令行执行选项、参数和子命令的解释

import argparse

 

#创建解释器
parser = argparse.ArgumentParser()

#添加参数
parser.add_argument('-g', '--good', choices=['yuwen', 'shuxue'])
# '-g' 代表短选项,在命令行输入-g 和-good效果一样,作用是简化参数输入
#choices 代表输入的参数只能是choice里面的内容,其他内容会报错

parser.add_argument('--house', type=int, default=100)
#--house 代表参数名称
#type 代表参数类型
# default代表该参数不输入,则会使用默认值

parser.add_argument('food')
#该种方式则要求必须输入该参数
#输入该参数不需要指定参数名称,指定反而报错,解释器自动将值赋给food

#参数解析
args = parser.parse_args()
print(args, type(args))
print(args.good)

 cmd执行 :  python demo.py  tomato     

自动给值赋给food

good没有赋值,为None

house没有赋值,使用默认值100

 

 cmd执行: python .\demo.py  -g   yuwen   tomato

good赋值 yuwen
food赋值tomato

 

 

 简写不能用-h, 会报错,这个内置了

钉钉