一、引入模块
import argparse
二、建立解析对象
parser = argparse.ArgumentParser()
三、增加属性
给xx实例增加一个aa属性 xx.add_argument(“aa”)
parser.add_argument(“echo”)
四、属性给与args实例
parse_args()
把parser中设置的所有"add_argument"给返回到args子类实例当中, 那么parser中增加的属性内容都会在args实例中,使用即可。
args = parser.parse_args()
补充说明:
在 add_argument 前,给属性名之前加上“- -”,就能将之变为可选参数。
parser.add_argument("–bool",help = “Whether to pirnt sth.”)
1、参数action:
action = “store_true” 默认操作True :
特例:
parser.add_argument(’-c’, action=‘store_true’, default=false)
#python test.py -c => c是true(因为action)
#python test.py => c是false(default)
2、参数nargs:
正则表达式的规则-参数个数:
nargs=’*’ 表示参数可设置零个或多个
nargs=’ ‘+’ 表示参数可设置一个或多个
nargs=’?’ 表示参数可设置零个或一个
使用文件作为参数
type参数,可以设定type值为文件,比如: type=argparser.FileType(‘r’)) 直接对文件进行操作。下面是参数直接输入一个文件路径后打印文件内容的例子:
import argparse
parser = argparse.ArgumentParser()
parser.add_argument(‘file’, type=argparse.FileType(‘r’)) # 读取文件
args = parser.parse_args() # 打印文件内容
for line in args.file:
print(line.strip())
3.参数候选值choice
使用choise关键参数,可以限定这个参数的值必须在候选的列表内。
4.参数const
action 和 nargs 所需要的常量值
5、参数default
不指定参数时的默认值
6、参数type
命令行参数应该被转换成的类型(一般为src)
7、参数required
可选参数是否可以省略 (仅针对可选参数)
8、参数help
参数的帮助信息,当指定为 argparse.SUPPRESS 时表示不显示该参数的帮助信息
9、参数metavar
在 usage 说明中的参数名称,对于必选参数默认就是参数名称,对于可选参数默认是全大写的参数名称
10、参数dest
解析后的参数名称,默认情况下,对于可选参数选取最长的名称,中划线转换为下划线
import argparse
parser = argparse.ArgumentParser(description=‘解析命令行参数’)
parser.add_argument(‘echo’, choices=[‘a’, ‘b’, ‘c’], default=‘a’, nargs=’?’)
args = parser.parse_args()
print(args.echo, type(args.echo)) # 获取参数,打印出来
print(args) # 看看整个的内容
import argparse
def main():
parser = argparse.ArgumentParser(description='解析命令行参数')
parser.add_argument('echo', choices=['a', 'b', 'c'], default='a', nargs='?')
args = parser.parse_args()
print(args.echo, type(args.echo)) # 获取参数,打印出来
print("---------------")
print(args) # 看看整个的内容
程序运行截图
转载自:https://blog.csdn.net/zcy904983/article/details/104876858