python - 如何阻止 argparse 接受缩写的 "long name"标志? ( python 2.7)

标签 python python-2.7 argparse

<分区>

>>> import argparse
>>> parser = argparse.ArgumentParser()
>>> parser.add_argument("--dog")
_StoreAction(option_strings=['--dog'], dest='dog', nargs=None, const=None, default=None, type=None, choices=None, help=None, metavar=None)
>>> args = parser.parse_args(["--do", "fido"])
>>> args
Namespace(dog='fido')

这似乎是一个错误。我原以为它不会承认这个论点。我怎样才能阻止这种情况发生?

编辑:apparently this is documented behavior...

最佳答案

尝试

parser = argparse.ArgumentParser(allow_abbrev=False)

根据 this .需要 Python 3.5 或更高版本。

关于python - 如何阻止 argparse 接受缩写的 "long name"标志? ( python 2.7),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39479233/

相关文章:

python - 如何处理可能是一个值或多个值列表的输入参数?

python - 如何同时使用数组和切片numpy数组进行索引

Python读取特定的单元格值

python-2.7 - 如何在没有 pip 或任何包管理器的情况下安装 Pandas 和依赖项

python - 在 python 中更改字典

python - 如果没有传递参数,如何使参数默认?

Python 将字符串转换为类

python - 具有可变和不可变属性的数据类样式对象?

python - Ho在python中将pd数据帧转换为矩阵结构

没有参数的 Python argparse 命令行标志