argparse读取参数

用法

  • argparse是内置于python中,所以即为直接在命令行中对程序传入参数并让程序运行的便捷工具。
  • 具体步骤如下所示
    1. 导包,为import argparse
    2. 创建一个ArugmentParser对象,随后一切都在这个对象里面操作,为parser = argparse.ArgumentParser()
    3. 加入一些参数,具体方法为parser.add_argument()
    4. 解析参数,为args = parser.parse_args()
  • -h,帮助操作,一般用显示帮助信息,如在加入参数的时候一些定义以及显示
  • 传入参数方法,为parser.add_argument('--integers', type=str, help='传入的数字', default='1', required=True, nargs='+')
    1. –integers, 分为可选参数–和普通参数,可选参数的意义在于保持了代码的逻辑性,可以自定义输入参数顺序,而且在调用的时候只需要args.integers即可【以上述代码为例,省略–即为实际参数】
    2. type,指定参数类型,可以为int,str,float,list,dict等类型,传入为bool类型的时候,需要注意是因为无论传入什么数值都会是True,所以需要用dest和action处理
    3. help,为在输入-h参数的时候,显示的信息,一般用于说明介绍参数
    4. default,即为设置默认参数,一般与type类型一直
    5. required为必须参数,required=True即为输入进入命令行的时候必须带入该参数
    6. nargs为设置该参数下的个数,如果为2-n个参数,需要设置如下操作
      1. '*'为接受0-n个参数
      2. '?'为参数可以设置0-1个
      3. "+"可以设置为1-n个
      4. 【具体跟正则表达式匹配类似】
    7. dest,这里是可以设置为你所需要放置的参数如para1变量,即为最后在args类中的namespace中会赋值给para1,一般配合与action参数一起使用
    8. action,一般为设置为布尔类型,即为store_true和store_false,分别为赋值为真和假

argparseExample.py简单示例

  • #!/usr/bin/env python
    # -- coding: utf-8 --
    # @Time : 2024/1/13 16:08
    # @Author : Lucas
    # @File : argparseExample.py
    import argparse
    parser = argparse.ArgumentParser(description='命令行输入参数随后遍历出来')
    #type是要传入的参数的数据类型  help是该参数的提示信息
    parser.add_argument('--parameterOne', type=int, nargs='+', help='参数1', default=1)
    parser.add_argument('--parameterTwo', type=int, nargs='+', help='参数2', default=2)
    parser.add_argument('--parameterThree', type=int, nargs='?', help='参数2', default=3, required=True)
    args = parser.parse_args()
    # 默认为真,即为最后namespace最终出现为args.flag变量,而且默认如果出现为赋值为假,默认为真
    parser.add_argument('--is_flag', dest='flag', action='store_false', default=True)
    # 获得传入的参数
    print(args)
    # 计算结果
    print(args.parameterThree + args.parameterTwo + args.parameterOne)
    
  • 在命令行中输入python argparseExample.py --parameterThree 1即可

实操

参考

  • 20
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值