2014-01-16 82 views
0

我有一个Python文件,它是能够播放wav文件, 且有检测使用外部火焰传感器火焰另一个Python文件,打开Python文件,权限被拒绝错误

什么我想要做的是,如果火焰检测播放Play.py文件

所以探索我发现这一点,

import subprocess 

subprocess.call("./play.py", shell=True) 

我试图在一个空文件粘贴到执行它并命名后,我牛逼Test.py

但我收到此错误,

/bin/sh: 1: ./play.py: Permission denied 

两个play.pyTest.py在同一个目录下。

在另一方面

,我能够发挥play.py文件分开

python play.py 

但我得到当我从其他Python文件中使用子运行它的错误。 有没有人知道原因?

是的,我正在执行它作为根。

+0

尝试http://stackoverflow.com/a/18941619/158111? – woozyking

回答

0

要运行该文件为./play.py,您需要首先为该文件提供执行权限。

chmod +x play.py 

并将#!/usr/bin/python添加到此文件的顶部。

否则,你也可以运行它:

import sys 
subprocess.call([sys.executable, 'play.py']) 
1

你为什么不只是导入play.py文件我也不清楚。如果这是所有的蟒蛇不应该让它容易吗? 不过: 你给了自己的答案:

subprocess.call("python play.py", shell=True) 
相关问题