我开始使用python,并且在尝试将一些参数传递给 os.popen()时,我不断获得
语法错误:引号结尾的字符串
它基本上不仅发生在一个地方,它发生在所有地方,在这里我使用“复杂”的说法。 例如:
path="/home/user/Desktop/"
video="Science Copies Nature's Secrets - Biomimicry-2d1VrCvdzbY.webm"
os.popen("(python -m json.tool "+PATH+video+"-something.json | grep \"ext\"\")")
我以为是 Nature's 中的'导致了问题,但即使将其改进为 Nature \'s ,它也无法正常工作。 我尝试过的另一件事是将命令保存在另一个变量中,而不是调用os.popen(variable),但没有结果。
对于这里经验丰富的人来说,这可能是一个愚蠢的问题,但我希望获得一些实际的帮助或提示。
答案 0 :(得分:0)
我认为您不需要括号,您需要在空格之前加上一个空格,并用“”括住文件。以下应该起作用:
path = "/home/user/Desktop/"
video = "Science Copies Nature's Secrets - Biomimicry-2d1VrCvdzbY.webm"
os.popen("python -m json.tool \"" + path + video + "\" -something.json | grep \"ext\"")