我对Ubuntu非常陌生。在我的计算机上,使用Python 3.8运行Ubuntu 20.04,我正在尝试运行一个不支持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?虚拟环境可以提供帮助吗?
我的问题确实与此How to install python-distutils类似,但实际上我不需要distutils,我只需要程序即可工作...
谢谢
-----编辑-----
我曾尝试使用venv创建虚拟环境,但由于星期二无法使用surepip导致出现错误。在Google上进行搜索,发现它可能与以下事实有关:我的Python 3.7版本可能是通过Anaconda安装的(我实际上不记得了)。运行apt-cache rdepends python3.7
,我得到:
python3.7
Reverse Depends:
python3.7-minimal
完全卸载当前的Python3.7并重新安装它以确保获得surepip是否安全?有建议的代码可以安全地执行此操作吗?
最简单的解决方案是在虚拟环境中运行程序,在该环境中,我认为默认的python版本应为3.7(示例请参见Use different Python version with virtualenv)。然后,您可以在此环境中安装所有依赖项,而不必处理Python上两个版本之间的任何冲突。
使用pyenv,您可以指定要使用的python版本。例如:创建一个新文件夹并点击:
pyenv local 3.7.2
然后使用pipenv创建虚拟环境:
pipenv install
然后开始构建游戏的旅程。
希望帮助。