1) argparse是python用于解析命令行参数和选项的标准模块,用于代替已经过时的optparse模块。 例如 python parseTest.py input.txt output.txt --user=name --port=8080。 使用步骤: 1:import argparse 2:parser = argparse.ArgumentParser() 3:parser.add_argument() 4:parser.parse_args() 解释:首先导入该模块;然后创建一个解析对象;然后向该对象中添加你要关注的命令行参数和选项, 每一个add_argument方法对应一个你要关注的参数或选项;最后调用parse_args()方法进行解析; 2) add_argument 方法 add_argument(name or flags...[, action][, nargs][, const][, default][, type][, choices][, required][, help][, metavar][, dest]) name or flags:命令行参数名,参数分为位置性参数和可选性参数, 位置参数(eg., "filename")在命令行中必须给出,而可选参数(eg., "-f" or "--filename") 可给可不给, 如果没有给出且有指定"default", 则使用default的值,否则为None. action:argparse内置6种动作可以在解析到一个参数时进行触发: store 保存参数值,可能会先将参数值转换成另一个数据类型。若没有显式指定动作,则默认为该动作。 store_const 保存一个被定义为参数规格一部分的值,而不是一个来自参数解析而来的值。这通常用于实现非布尔值的命令行标记。 store_ture/store_false 保存相应的布尔值。这两个动作被用于实现布尔开关。 append 将值保存到一个列表中。若参数重复出现,则保存多个值。 append_const 将一个定义在参数规格中的值保存到一个列表中。 例如: parser = argparse.ArgumentParser() parser.add_argument('--t', help=' ', action='store_true', default=False) config = parser.parse_args() print(config.t) 直接运行python aa.py,输出结果False, 运行python aa.py --t,输出结果True 也就是说,action='store_true',只要运行时该变量有传参就将该变量设为True。 parser.add_argument('-a', action='append', dest='collection', default=[], help='Add repeated values to a list') print(config.collection) 运行 python aa.py -a one -a two -a three, 输出结果为:['one', 'two', 'three']。 type:参数的类型,默认是字符串str类型,还有float、int等类型。
argparse
最新推荐文章于 2019-07-04 22:58:56 发布