python - 将空字符串传递给 argparse

标签 python command-line argparse python-3.2

我正在使用 argparse(Python 3.2)。参数 mode 简单定义为:

p.add_argument('--mode', dest='mode')

我想以参数mode设置为空字符串的方式从命令行调用程序;或者至少到一个空格 ' ' (我可以稍后去除空格)。

我尝试使用(在 Windows 下)program_name --mode ""program_name --mode "",但都不起作用。

最佳答案

这似乎在 OS-X 下对我有用:

import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--mode')
p = parser.parse_args()
print(p)

然后:

python test.py --mode=

我没有 windows 机器,所以我不知道它们是如何操作的......

当然,您上面提到的其他内容也可以在 OS-X 上运行。这里的优点是它不应该依赖于 shell 如何拆分引号中的参数,这应该使它在我认为的更多地方工作。

关于python - 将空字符串传递给 argparse,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13558964/

相关文章:

Python:在解析 JSON 字符串时处理损坏的 unicode 字节

command-line - 如何在命令行(cmd)中运行java类? (使用类路径)

python argparse 处理任意数字选项(如 HEAD(1))

Python argparse 整数条件 (>=12)

python - 抓取每页具有不同元素定位的表格

Python - 命令 "python setup.py egg_info"失败,错误代码为 1 in/tmp/pip-build-21ft0H/pandas

sorting - 最高 awk 结果被计数条件截断

google-app-engine - Google App Engine SSL 不适用于 openssl 命令行工具

python-2.7 - Python argparse AssertionError 当参数数量超过阈值时

python - 输入多个数据集到tensorflow模型