我在尝试使用openai gym模块时遇到了这个错误:
>>> import atari_pyTraceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\Users\ssit5\AppData\Local\Programs\Python\Python38\lib\site-packages\atari_py\__init__.py", line 1, in <module> from .ale_python_interface import * File "C:\Users\ssit5\AppData\Local\Programs\Python\Python38\lib\site-packages\atari_py\ale_python_interface.py", line 17, in <module> ale_lib = cdll.LoadLibrary(os.path.join(os.path.dirname(__file__), File "C:\Users\ssit5\AppData\Local\Programs\Python\Python38\lib\ctypes\__init__.py", line 451, in LoadLibrary return self._dlltype(name) File "C:\Users\ssit5\AppData\Local\Programs\Python\Python38\lib\ctypes\__init__.py", line 373, in __init__ self._handle = _dlopen(self._name, mode)FileNotFoundError: Could not find module 'C:\Users\ssit5\AppData\Local\Programs\Python\Python38\lib\site-packages\atari_py\ale_interface\ale_c.dll' (or one of its dependencies). Try using the full path with constructor syntax.
我没有ale_c.dll,并且尝试了各种解决方案但都没有效果。我按照这里的解决方案https://github.com/openai/gym/issues/1726操作,但在尝试导入atari_py时仍然出现相同的错误。我不明白为什么__init__
会去寻找模块中不存在的东西。我还查看了其他StackOverflow上的问题,但也没有找到解决办法。我能想到的唯一解决方案是获取ale_c.dll的副本,但我不知道如何获取它。
回答:
我遇到了同样的错误。幸运的是,我找到了一个解决方法。按照以下步骤操作,你应该可以解决问题。
- 从这里下载
ale_c.dll
。 - 将其复制到
C:\Users\Deep Raval\AppData\Local\Programs\Python\Python38\Lib\site-packages\atari_py\ale_interface
(你的路径可能不同)。