python中argparse模块及action=‘store_true‘详解

1. 指定action时

通俗讲,action的作用就是在命令行中指定参数名称时,参数的取值。

如:

parser.add_argument('--save-file', action='store_true',  default=False, help='是否保存文件')

给参数设置action之后,命令执行时,参数就不能再赋值,不然会报错。

比如执行脚本:python test.py --save-file True ,这时会报错(认为True是一个新的参数):

error: unrecognized arguments: True

也就是说设置了action之后,命令中的参数就不需要赋值,会取action中的值。

直接执行 python test.py --save-file 即可。

而且这里再设置default已经无意义了,没有任何作用。

如果你尝试同时设置 type 和 action 这两个属性,argparse会抛出一个错误,提示这两个设置是互斥的。

2. 指定type时

parser.add_argument('--save-file', type=bool,  default=False, help='是否保存文件')

命令中参数必须赋值,如:python test.py --save-file True

否则,会报错:error: argument --save-file: expected one argument

或者命令中不带参数名,则直接以default参数为准。

  • 6
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值