想在树莓派上通过 Python3 运行虚拟环境而不是通过终端

问题描述

基本上我想最终创建一个可以在我的 Pi 开启时启动的可执行文件。目前我必须在命令提示符(来自 bash)中使用“source bin/activate”运行虚拟环境“激活”文件,我无法直接运行它。

我已经尝试使用下面的短代码解决它(通过 python 脚本运行虚拟环境,然后运行我的代码),但我遇到了权限错误

`import subprocess
 virtual_env = "Folder1/Folder2-env/bin/activate"
 script_file = "Folder1/Program.py"
 subprocess.Popen([virtual_env,script_file])`

这是我得到的错误

`Traceback (most recent call last):
 File “/home/pi/test.py”,line 7 in <module>
 Subprocess.Popen([virtual_env,script_file])
 File “/usr/lib/python3.7/subprocess.py”,line 775,in __init__
 Restore_signals,start_new_session)
 File “/usr/lib/python3.7/subprocess.py”,line 1522,in _execute_child
 Raise child_exception_type(errno_num,err_msg,err_filename)
 PermissionError: [Errno 13] Permission denied: ‘Folder1/Folder2-env/bin/activate’`

感谢任何帮助!

解决方法

您可以使用文件 .bat 激活虚拟环境并运行您的脚本 例如:

call workon venv & cd path/to/Python/proj & python -m script.py

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...