为了账号安全,请及时绑定邮箱和手机立即绑定

在一个脚本中运行两个版本的 Python。可能的?

在一个脚本中运行两个版本的 Python。可能的?

翻过高山走不出你 2021-12-21 16:49:34
我有一个纯 Python 3.7.3 和另一个 QGIS 软件包附带的 Python 3.7.0。我将默认 Python 设置为 3.7.0,需要让一些函数和模块在 3.7.3 中工作。我可以将默认环境设置为 3.7.3,但在这种情况下,我无法访问qgis.corelib。在 3.7.0 中我需要执行,from PyQt5 import QtWidgets但在这里它抛出和缺少 dll 的错误。重新安装pyqt5会损坏qgis并完全删除它。所以我看到我需要使用在纯 3.7.3 中工作的 Qt 函数从 3.7.0 运行脚本。但是我怎样才能放入我的脚本。我试图测试,virtualenv但看起来它不想设置临时环境。
查看完整描述

2 回答

?
拉丁的传说

TA贡献1789条经验 获得超8个赞

做好了。


在 3.7.0 脚本中我添加


import sys 

qt_bundle =['~long_path_to_appdata\\Python\\Python37-32\\lib\\site-packages\\'] # list in case I need to add more modules

sys.path+= qt_bundle

之后这个声明


from PyQt5 import QtCore, QtWidgets

不会抛出任何错误


查看完整回答
反对 回复 2021-12-21
?
holdtom

TA贡献1805条经验 获得超10个赞

我相信您应该处理这些问题并避免使用 2 个不同的 Python 环境。但是你可以用pyenv来实现这一点。


假设 3.7.0 是您的系统 Python 版本。首先,安装pyenv和3.7.3环境:


$ pyenv update

$ pyenv install 3.7.3

$ pyenv shell 3.7.3

然后,使用pip安装PyQt5和其他要求。


最终,您将能够手动或在脚本中切换到每个已安装的版本。


pyenv还支持虚拟环境。


查看完整回答
反对 回复 2021-12-21
  • 2 回答
  • 0 关注
  • 177 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号