在Python erro中使用子进程运行mplayer
我想使用python运行mplayer,下面是我的代码在Python erro中使用子进程运行mplayer,python,python-2.7,subprocess,mplayer,Python,Python 2.7,Subprocess,Mplayer,我想使用python运行mplayer,下面是我的代码 from subprocess import call call (mplayer /root/Desktop/file.mp4) 但它不起作用我犯了这个错误 File "two.py", line 8, in <module> call ("mplayer /root/Desktop/file.mp4") File "/usr/lib/python2.7/subprocess.py", line 493, in
from subprocess import call
call (mplayer /root/Desktop/file.mp4)
但它不起作用我犯了这个错误
File "two.py", line 8, in <module>
call ("mplayer /root/Desktop/file.mp4")
File "/usr/lib/python2.7/subprocess.py", line 493, in call
return Popen(*popenargs, **kwargs).wait()
File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1259, in _execute_child
raise child_exception
文件“two.py”,第8行,在
调用(“mplayer/root/Desktop/file.mp4”)
文件“/usr/lib/python2.7/subprocess.py”,第493行,在调用中
返回Popen(*popenargs,**kwargs)。等待()
文件“/usr/lib/python2.7/subprocess.py”,第679行,在__
错误读取,错误写入)
文件“/usr/lib/python2.7/subprocess.py”,第1259行,在执行子进程中
引发子对象异常
我做错了什么?您需要传递shell=False的参数列表(这是默认值): 或者对于单个字符串,您需要shell=True:
但是不需要后者,第一个可以正常工作。您需要传递一个参数列表,其中shell=False(默认值): 或者对于单个字符串,您需要shell=True: 但不需要后者,前者可以很好地发挥作用
call(["mplayer", "/root/Desktop/file.mp4"])
call("mplayer /root/Desktop/file.mp4", shell=True)