因为我在Windows上运行python,这是我遇到的argparse的下一个问题,而且我没有看到解决方案。我以前用过optparse。这是我的代码:
import argparse
parser = argparse.ArgumentParser(
description = 'Test description') # main description for help
parser.add_argument('-d', '--dir', # -u or --user option
dest = "dir",
help = 'directory to start with')
args = parser.parse_args()
print(args.dir)
但是当我使用
运行此代码时code.py -d test
code.py --dir test
我总是得到None
作为输出。我觉得这是微不足道的,我忽略了一些明显的东西,但我看不到它。
罐
亚历
答案 0 :(得分:2)
问题似乎是由Windows引起的,以及如何尝试在命令行上执行代码。在给定的示例中,测试脚本直接在命令行上调用,在代码之前没有python
,如建议的in this answer。
如果代码执行
python code.py
可以看到预期的行为,并且在代码中正确解析了参数。
因此,Windows系统的设置不完整,或者上述链接中的建议不完整。