1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| add_argument(name or flags...[, action][, nargs][, const][, default][, type][, choices][, required][, help][, metavar][, dest]) ```
参数: - `name or flags`:命令行参数名或者选项,如上面的address或者-p,--port.其中命令行参数如果没给定,且没有设置defualt,则出错。但是如果是选项的话,则设置为None
- `nargs`:命令行参数的个数,一般使用通配符表示,其中,`?`表示只用一个,`*`表示0到多个,`+`表示至少一个
- `dest`:如果提供dest,例如dest="a",那么可以通过args.a访问该参数
- `default`:设置参数的默认值
- `version`:打印程序版本信息
- `type`:把从命令行输入的结果转成设置的类型
- `help`:参数命令的介绍
```python import argparse
def build_arg_parser(): parser = argparse.ArgumentParser(description='Compress the input image \ using clustering') parser.add_argument("--input-file", dest="input_file", required=True, help="Input image") parser.add_argument("--num-bits", dest="num_bits", required=False, type=int, help="Number of bits used to represent each pixel") return parser
if __name__=='__main__': args = build_arg_parser().parse_args() input_file = args.input_file num_bits = args.num_bits print(input_file) print(num_bits)
|