【发布时间】:2011-10-22 04:58:44
【问题描述】:
当使用 optparse 时,我想在一个选项之后获取整个字符串,但我只得到它的一部分直到第一个空格。
例如:
python myprog.py --executable python someOtherProg.py
我在“可执行文件”中得到的只是“python”。
是否可以使用 optparse 解析这些行,还是必须使用 argparse 来解析?
€:我已经尝试将它包含在 "s 中。但是在深入研究代码后,我发现子进程调用无法处理参数。
带有命令行的字符串被塞进一个列表“args”中。
args = [self.getExecutable()] + self.getArgs().split()
好像
"[python D:\\\workspace\\\myprog\\\src\\\myprog.py]"
这给了我系统找不到文件异常。当我使用
args[0]
它有效。但是我放弃了可执行文件的论点。
如果 subprocess 模块一开始没有得到字符串,它会从列表中构建一个命令行,所以我目前无法解释这种行为。
【问题讨论】: