无法创建正确的路径以将其用于 os.system
Cannot create correct path to use it with os.system
我知道类似的问题一直在出现,但我已经阅读了我能找到的所有内容。
那里的解决方案对我有所帮助,但我仍然无法构建包含空格的正确完整路径。
经过研究,我找到了添加 \ 并在单引号中引用所有内容的解决方案。所以这个路径是可以接受的,如下所示。
import os
os.system('\"C:\Program Files (x86)\remar\remar.exe"')
但是,问题是我必须向它添加控制台命令,所以路径必须如下所示:
C:\Program Files (x86)\remar\remar.exe --break-in=null
我试图连接路径的几个部分,但结果对于 os.system()
表达式来说是不可接受的。
我做不出那样的东西 - "'\" + '"C:\Program Files' + ' ' + "(x86)\remar\remar.exe"'" + ' ' + '--break-in=null'
我应该怎么做才能将所有部分放在一条正确的路径上?
PS - 我尝试了 Windows path in Python 的解决方案,但它对我不起作用。也许是因为 python 版本。我正在使用 3.61 顺便说一句。
在这里尝试使用 os.path.join。不要以反斜杠结束您的路径变量,加入将为您完成。
import os, subprocess
path = r"C:\Program Files (x86)\test"
filename = "test.exe"
result = os.path.join(path, filename)
print(result)
subprocess.run(result)
您可能还会对 pathlib 路径感兴趣
我知道类似的问题一直在出现,但我已经阅读了我能找到的所有内容。 那里的解决方案对我有所帮助,但我仍然无法构建包含空格的正确完整路径。
经过研究,我找到了添加 \ 并在单引号中引用所有内容的解决方案。所以这个路径是可以接受的,如下所示。
import os
os.system('\"C:\Program Files (x86)\remar\remar.exe"')
但是,问题是我必须向它添加控制台命令,所以路径必须如下所示:
C:\Program Files (x86)\remar\remar.exe --break-in=null
我试图连接路径的几个部分,但结果对于 os.system()
表达式来说是不可接受的。
我做不出那样的东西 - "'\" + '"C:\Program Files' + ' ' + "(x86)\remar\remar.exe"'" + ' ' + '--break-in=null'
我应该怎么做才能将所有部分放在一条正确的路径上?
PS - 我尝试了 Windows path in Python 的解决方案,但它对我不起作用。也许是因为 python 版本。我正在使用 3.61 顺便说一句。
在这里尝试使用 os.path.join。不要以反斜杠结束您的路径变量,加入将为您完成。
import os, subprocess
path = r"C:\Program Files (x86)\test"
filename = "test.exe"
result = os.path.join(path, filename)
print(result)
subprocess.run(result)
您可能还会对 pathlib 路径感兴趣