尝试在 Windows 11、Visual Studio Code 下运行gymnasium 包时,出现以下错误
PS C:\Users\[...]\Code\Gymnasium> & c:/Users/Thomas.koeppen/Code/Gymnasium/.venv/Scripts/python.exe c:/Users/Thomas.koeppen/Code/Gymnasium/main.py
Traceback (most recent call last):
File "C:\Users\[...]\Code\Gymnasium\.venv\Lib\site-packages\gymnasium\envs\box2d\bipedal_walker.py", line 15, in <module>
import Box2D
ModuleNotFoundError: No module named 'Box2D'
[...]
File "C:\Users\[...]\Code\Gymnasium\.venv\Lib\site-packages\gymnasium\envs\box2d\bipedal_walker.py", line 25, in <module>
raise DependencyNotInstalled(
gymnasium.error.DependencyNotInstalled: Box2D is not installed, run `pip install gymnasium[box2d]`
当尝试安装任何 box2d 模块时,我再次收到错误消息
PS C:\Users\[...]\Code\Gymnasium> pip install gymnasium[box2d]
[...]
Building wheel for box2d-py (pyproject.toml) ... error
ModuleNotFoundError: No module named 'swig'
[...]
error: command 'C:\\Users\\[...]\\Code\\Gymnasium\\.venv\\Scripts\\swig.exe' failed with exit code 1
swig 包丢失了,尽管我已经用 pip install swig 安装了它:
PS C:\Users\[...]\Code\Gymnasium> pip3 install swig
Requirement already satisfied: swig in c:\users\[...]\code\gymnasium\.venv\lib\site-packages (4.2.1)
这个错误让我忙了很长一段时间,我想把解决方案记录下来,供以后遇到这个问题的有积极性的同行
许多答案都指向使用“pip install swig”、安装升级、使用不同的 python 版本等,所有这些都对我不起作用:
相反,我需要从官方网站手动获取 swigwin:http://www.swig.org/download.html
解压存档并将解压目录的路径添加到 PATH 环境变量中。
此外,您可能还需要从官方网站安装 Microsoft Build Tools for C++:https://visualstudio.microsoft.com/de/visual-cpp-build-tools/ 确保在安装过程中选择“使用 C++ 进行桌面开发”