Python、subprocess、filepath空格和著名的“C:/Program”不能识别为内部或外部命令

2024-05-17 13:59:12 发布

您现在位置:Python中文网/ 问答频道 /正文

在“”引号中括起完整的文件路径不会使其工作。

cmd=“C:\程序文件(x86)\ iTunes\iTunes.exe”

subprocess.popen如果要执行的文件路径中有空格,则抛出无法找到可执行文件的错误。

不久前,我找到了一个解决方案,包括使用一些奇怪的符号或它们的组合。。。不幸的是,我找不到与该示例的代码。如果有人能给我指一个正确的方向,我将不胜感激。提前谢谢。


Tags: 文件路径程序cmd可执行文件错误符号解决方案
3条回答

使用:

cmd = '"C:\\Program Files (x86)\\iTunes\\iTunes.exe"'

或者

cmd = r'"C:\Program Files (x86)\iTunesr\iTunes.exe"'

字符串中的反斜杠触发转义字符。由于Windows完全支持将正斜杠用作路径分隔符,请执行以下操作:

cmd = "C:/Program Files (x86)/iTunes/iTunes.exe"

不需要摆弄\\或原始字符串。;)

文件路径:

file_path= 'E:\\te st.py'

那么你应该:

file_path = '"E:\\te st.py"'

然后它工作了,我的Main.py作为show blow:

import subprocess

doc = '"E:\\te st.py"'

p = subprocess.Popen ('python ' + doc , stdout=subprocess.PIPE,
                             stderr=subprocess.PIPE)
output = p.communicate()
print output

最重要的是:

print 'hello world'

相关问题 更多 >