首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用子进程从其他python文件中打开python文件,权限拒绝错误

使用子进程从其他python文件中打开python文件,权限拒绝错误
EN

Stack Overflow用户
提问于 2014-01-16 15:00:25
回答 2查看 1.6K关注 0票数 0

我有一个能够播放wav文件的Python文件,还有另一个Python文件,它使用外部火焰传感器检测火焰,

我想做的是,如果探测到火焰,播放Play.py文件

所以在探索之后我发现了这个,

代码语言:javascript
复制
import subprocess

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

我试图通过将它粘贴到一个空文件中并命名为Test.py来执行它。

但我得到了这个错误,

代码语言:javascript
复制
/bin/sh: 1: ./play.py: Permission denied

play.pyTest.py都位于同一个目录中。

另一方面,我可以单独播放play.py文件

代码语言:javascript
复制
python play.py

但是,当我使用子进程从其他python文件运行它时,我会得到错误。有人知道原因吗?

是的,我把它作为根来执行。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-01-16 15:09:53

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

代码语言:javascript
复制
chmod +x play.py

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

否则,您也可以将其运行为:

代码语言:javascript
复制
import sys
subprocess.call([sys.executable, 'play.py'])
票数 1
EN

Stack Overflow用户

发布于 2014-01-16 15:09:56

为什么你不直接导入play.py文件对我来说还不清楚。如果都是蟒蛇的话,难道不是让你很容易吗?然而:你给自己的答案是:

代码语言:javascript
复制
subprocess.call("python play.py", shell=True)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21165274

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档