我对 Ubuntu 很陌生。在我的机器上,运行带有Python 20.04的Ubuntu 3.8,我正在尝试运行一个不支持Python 3.8的程序,但它需要Python 3.7(仅供参考,它是Carla Simulator(。
我需要pygame,但是当通过pip(python3.7 -m pip install pygame
(安装它时,它会引发错误:ModuleNotFoundError: No module named 'distutils.util'
现在,我已经distutils
正确安装和更新了版本 3.8.2-1ubuntu1。 有什么方法可以安装与Python 3.7兼容的distutils
版本而不影响Python 3.8和相关模块吗?或者你有什么建议来获得Python 3.7的pygame并以某种方式运行Carla吗?虚拟环境能提供帮助吗?
我的问题与这个问题非常相似 如何安装 python-distutils,但我实际上并不需要 distutils,我只需要程序工作......
谢谢
-----编辑-----
我尝试使用 venv 创建一个虚拟环境,但由于 ensurepip 不可用,我遇到了错误。谷歌搜索它,我发现它可能与我的Python 3.7版本可能是通过Anaconda安装的事实有关(我实际上不记得了(。运行apt-cache rdepends python3.7
我得到:
python3.7
Reverse Depends:
python3.7-minimal
完全卸载当前的 Python3.7 并重新安装它以希望获得 ensurepip 是否安全?有什么建议的代码可以安全地做到这一点吗?
最简单的解决方案是在虚拟环境中运行程序,我认为您将默认的python版本指定为3.7(有关示例,请参阅将不同的Python版本与virtualenv一起使用(。然后,您可以在此环境中安装所有依赖项,而不必在 Python 上处理两个版本之间的任何冲突。
使用 pyenv,您可以指定要使用的 python 版本。 例如: 创建一个新文件夹并点击:
pyenv local 3.7.2
然后使用 pipenv 创建虚拟环境:
pipenv install
然后开始构建游戏的旅程。
希望有帮助。