5

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

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

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

我尝试使用(在 Windows 下)program_name --mode ""program_name --mode " ",但都没有成功。

4

1 回答 1

14

这似乎在 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 如何拆分引号中的参数,这应该使它在我认为的更多地方工作。

于 2012-11-26T05:13:58.827 回答