2个变量的Python空白问题

时间:2018-06-28 14:58:40

标签: python variables scripting whitespace

运行Python 2.6.6,并且每当我尝试使用两个变量(它们是另一个变量的路径)时,都会出现空白错误:

'C:\Program' is not recognized as an internal or external command,
operable program or batch file.

这是我的代码,问题出在cmd变量上:

from subprocess import call, Popen, PIPE, STDOUT

example = '"C:\\Program Files\\Example\\test.cmd"'  
output = '"C:\\test\\python\\reportFromPython.xml"'

cmd = example + " -T 'testing title' " + output

p = Popen(cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT)
output = p.stdout.read()
print output

如果我更改

cmd = example + " -T 'testing title' " + output

cmd = example + " -T 'testing title' "

然后它可以工作,但是我需要输出部分...如何使它与两个变量一起使用?

1 个答案:

答案 0 :(得分:1)

根据this answer,如果您正在运行.cmd文件,则不需要shell=True。然后,您可以将参数作为列表传递:

cmd = [example, "-T", "'testing title'", output]

除删除shell=True之外,其余代码将相同。