python argparse - 命令行选项与参数解析模块
import argparse
parser = argparse.ArgumentParser(description='This is a PyMOTW sample program')
ArgumentParser.add_argument(name or flags...[, action][, nargs][, const][, default][, type][, choices][, required][, help][, metavar][, dest]) 调用 add_argument() 方法添加参数
parser.add_argument('-d', '--debug', dest='debug', action='store_true',
default=False,
help='Enable debug info. (default: %(default)s)')
| argument | desc |
|---|---|
| name or flags | 选项字符串的名字或者列表,例如foo 或者-f, --foo |
| action | 在命令行遇到该参数时采取的基本动作类型 |
| nargs | 应该读取的命令行参数数目 |
| const | 某些action和nargs选项要求的常数值 |
| default | 如果命令行中没有出现该参数时的默认值 |
| type | 命令行参数应该被转换成的类型 |
| choices | 参数可允许的值的一个容器 |
| required | 该命令行选项是否可以省略(只针对可选参数) |
| help | 参数的简短描述 |
| metavar | 参数在帮助信息中的名字 |
| dest | 给parse_args()返回的对象要添加的属性名称 |
| key | desc |
|---|---|
| store | 只是保存参数的值。这是默认的动作 |
| store_const | 保存由const关键字参数指出的值 |
| store_true和store_false | 是store_const的特殊情形,分别用于保存值True和False |
| append | 保存一个列表,并将每个参数值附加在列表的后面 |
| append_const | 保存一个列表,并将const关键字参数指出的值附加在列表的后面 |
| version | 打印出版本信息 |
使用 parse_args() 解析添加的参数 返回的是一个命名空间,包含传递给命令的参数 如果你的参数 dest 是 "myoption",那么你就可以args.myoption 来访问该值
args = parser.parse_args()
print(args.myoption)