python 的命令行参数使用ArgumentParser

 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, 会报错,这个内置了

`vars()` 是一个内置函数,用于返回对象的属性和值的字典。它可以接受一个对象作为参数,并返回该对象的属性和对应的值组成的字典。

可以通过该函数处理args对象

 

 

posted on 2023-07-12 11:53  yanmay  阅读(97)  评论(0编辑  收藏  举报

导航