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でテスト済み)

解決済みの編集:ドレイクが言ったように、バックスラッシュをブラッシュに置き換えるだけです

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 に答える