天天看点

argparse模块详解

一、引入模块

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)  # 看看整个的内容
           
argparse模块详解

程序运行截图

转载自:https://blog.csdn.net/zcy904983/article/details/104876858