5

要使用 python 启动 vlc,我已经这样做了:

import subprocess

p = subprocess.Popen(["C:\Program Files(x86)\VideoLAN\VLC\vlc.exe","C:\Users\Kamilos\Desktop\TBT\Tbt_S01E17.avi"])

但它不起作用,为什么?:p

(在 python 2.7.3 和 3 中测试)

编辑已解决:就像德雷克所说,只需用 blash 替换反斜杠

subprocess.Popen(["C:/Program Files(x86)/VideoLAN/VLC/vlc.exe","C:/Users/Kamilos/Desktop/TBT/Tbt_S01E17.avi"])‌​
4

2 回答 2

5

您在路径分隔符之后有效地转义了每个字符。同样,这"\n"意味着一个新行,"\P","\V"也意味着不仅仅是一个 2 字符的字符串。

您可以只使用"\\"(或者"/",不记得 Windows 使用哪个)作为路径分隔符,但正确的方法是让 Python 为您使用os.path.join.

尝试:

import subprocess
import os

p = subprocess.Popen([os.path.join("C:/", "Program Files(x86)", "VideoLAN", "VLC", "vlc.exe"),os.path.join("C:/", "Users", "Kamilos", "Desktop", "TBT", "Tbt_S01E17.avi")])
于 2012-09-14T16:37:09.417 回答
-1

验证路径是否存在:

import os
print os.path.exists("C:\Users\Kamilos\Desktop\TBT\Tbt_S01E17.avi")
于 2012-09-14T12:32:32.723 回答