You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Python argparse同时设置nargs与action=store_true/count触发TypeError的问题咨询

Python argparse同时设置nargs与action=store_true/count触发TypeError的问题咨询

各位好,我在使用Python的argparse模块时碰到了一个TypeError,想请大家帮忙看看是不是我哪里操作错了🥺

我的代码如下:

import argparse

def parse_cmd_line():
    parser = argparse.ArgumentParser()

    parser.add_argument('-c', '--create',  nargs='*', action="store_true")

    args, flist = parser.parse_known_args()


if __name__ == "__main__" :
    parse_cmd_line()

当我用这个命令运行脚本时:

python3 parse.py -c

得到了以下报错:

Traceback (most recent call last):
  File "/home/raz/dev/tools/arc/parse.py", line 13, in <module>
    parse_cmd_line()
  File "/home/raz/dev/tools/arc/parse.py", line 7, in parse_cmd_line
    parser.add_argument('-c', '--create',  nargs='*', action="store_true")
  File "/usr/lib/python3.12/argparse.py", line 1489, in add_argument
    action = action_class(**kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^
TypeError: _StoreTrueAction.__init__() got an unexpected keyword argument 'nargs'

还有几个补充信息:

  • 把action改成"count"时,也会出现类似的报错
  • 调整nargs参数在add_argument里的位置,结果也没有变化

我反复检查了好几遍,感觉自己的操作没什么问题,但确实触发了错误,想问问大家是不是我哪里理解错了argparse的参数用法呀?

火山引擎 最新活动