python中的argsparse()函数 argsparse是一个用于解析和验证命令行参数的接口。默认将所有参数值都处理为字符串,可以用type=参数转换。
运用argsparse()函数: 1、创建一个解析器 使用 argsparse 的第一步是创建一个 ArgumentParser 对象: >>> parser = argparse.ArgumentParser(description=’Process some integers.’) 2、添加参数 给一个 ArgumentParser 添加程序参数信息是通过调用 add_argument() 方法完成的。通常,这些调用指定 ArgumentParser 如何命令行字符串并将其转换为对象。这些信息在 parse_args() 调用时被存储和使用。例如: >>> parser.add_argument(‘integers’, metavar=’N’, type=int, nargs=’+’, … help=’an integer for the accumulator’) >>> parser.add_argument(‘–sum’, dest=’accumulate’, action=’store_const’, … const=sum, default=max, … help=’sum the integers (default: find the max)’) 3、解析参数 ArgumentParser 通过 parse_args() 方法解析参数。它将检查命令行,把每个参数转换为适当的类型然后调用相应的操作。在大多数情况下,这意味着一个简单的 Namespace 对象将从命令行参数中解析出的属性构建: >>> parser.parse_args([‘–sum’, ‘7’, ‘-1′, ’42’]) Namespace(accumulate=<built-in function sum>, integers=[7, -1, 42])
ArgumentParser 对象 创建一个新的 ArgumentParser 对象。所有的参数都应当作为关键字参数传入。每个参数在下面都有它更详细的描述,但简而言之,它们是: • prog – 程序的名称(默认:sys.argv[0]) • usage – 描述程序用途的字符串(默认值:从添加到解析器的参数生成) • description – 在参数帮助文档之前显示的文本(默认值:无) • epilog – 在参数帮助文档之后显示的文本(默认值:无) • parents – 一个 ArgumentParser 对象的列表,它们的参数也应包含在内 • formatter_class – 用于自定义帮助文档输出格式的类 • prefix_chars – 可选参数的前缀字符集合(默认值:’-‘) • fromfile_prefix_chars – 当需要从文件中读取其他参数时,用于标识文件名的前缀字符集合(默认值:None) • argument_default – 参数的全局默认值(默认值: None) • conflict_handler – 解决冲突选项的策略(通常是不必要的) • add_help – 为解析器添加一个 -h/–help 选项(默认值: True) allow_abbrev – 如果缩写是无歧义的,则允许缩写长选项 (默认值:True)
some tips: 参数简写 >>>parser.add_argument(“-b”,”–bool”,action=”store_true”) 这样,在程序内部我们依旧使用args.bool,但是在命令行当中我们只需要多写一个“-b”就好了。 可变参数表:
nargs参数的使用
综合小例子: >>> parser = argparse.ArgumentParser(description=’my_first_blog’) >>>parse.add_argument(‘-b’, ’–at_least_one’, narg=’+’, dest=’all’, default=[2019], type=int, action=”, choice=test_sets.keys() ) >>>options = parse_args() >>>print(‘{ my first value of argsparse is {}}’.farmat(option.all[0])) 解释:外部输入参数短命令-b;外部输入包含多个字符的长命令–at_least_one;以提供的dest参数为名称(namespace)来保存这个值,可用内部命令args.all访问这个值;参数至少一个,默认设置为[2019]的list结构(因为参数不止一个),类型为int型,只能输入choice中的参数;action为参数动作。
官方API:https://docs.python.org/zh-cn/3.7/library/argparse.html?highlight=argparse#module-argparse 引用博客部分内容:https://ganler.github.io/2018/07/18/argsparse-python%E5%92%8C%E5%91%BD%E4%BB%A4%E8%A1%8C%E4%B9%8B%E9%97%B4%E7%9A%84%E4%BA%A4%E4%BA%92/
2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/73044.html