2014-01-16 81 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) 
相關問題