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

标签 python audio

我有一个能够播放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文件运行它时出现错误。
有人知道原因吗?

是的,我以root用户身份执行它。

最佳答案

要将文件作为./play.py运行,您需要首先提供对此文件的执行权限。

chmod +x play.py

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

否则,您也可以按以下方式运行它:
import sys
subprocess.call([sys.executable, 'play.py'])

关于python - 使用子进程从其他python文件打开python文件,权限被拒绝错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21165274/

相关文章:

javascript - 不将图片悬停时停止播放声音

matlab - 在Matlab中将LFO应用于信号

python - Python 中的跨平台音频播放

通过脚本的 HTML 音频控制

ios - 如何恢复 ios 中的音频?

python - 如何在 Python 2.7 中创建 Lambda 函数来创建、重新启动、删除、修改 ElastiCache Redis?

python - 是否有任何内置方法可以在 python 中获取可迭代的长度?

python - “pip install MySQL-python”失败并显示 'IndexError'

Python XLWT - 插入与单元格右上角对齐的图像

python - 使用 Python Peewee 指定要连接的表