我想让下面的代码工作.
import gym env = gym.make("CartPole-v0") env.reset() env.render()
运行前3行没有问题,但是当我运行第4行时,我得到错误:
Traceback (most recent call last): File "", line 1, in env.render() File "/home/mikedoho/gym/gym/core.py", line 150, in render return self._render(mode=mode, close=close) File "/home/mikedoho/gym/gym/core.py", line 286, in _render return self.env.render(mode, close) File "/home/mikedoho/gym/gym/core.py", line 150, in render return self._render(mode=mode, close=close) File "/home/mikedoho/gym/gym/envs/classic_control/cartpole.py", line 116, in _render self.viewer = rendering.Viewer(screen_width, screen_height) File "/home/mikedoho/gym/gym/envs/classic_control/rendering.py", line 51, in __init__ self.window = pyglet.window.Window(width=width, height=height, display=display) File "/home/mikedoho/anaconda3/lib/python3.6/site-packages/pyglet/window/__init__.py", line 504, in __init__ screen = display.get_default_screen() File "/home/mikedoho/anaconda3/lib/python3.6/site-packages/pyglet/canvas/base.py", line 73, in get_default_screen return self.get_screens()[0] File "/home/mikedoho/anaconda3/lib/python3.6/site-packages/pyglet/canvas/base.py", line 65, in get_screens raise NotImplementedError('abstract') NotImplementedError: abstract
我希望在一个杆子上安装一个推车,以便在新窗口中显示.
此错误来自Spyder中的代码.我使用的是ubuntu 16.04; python 3.6.3; IPython 6.1.0.我没有运气使用jupyter笔记本.
我再次道歉.今天刚刚下载的ubuntu我很新.
我刚刚解决了这个问题(bug?),就像10分钟前一样:D
你必须将pyglet 3降级为pyglet 1.2.4.只需输入:pip install pyglet==1.2.4
在你的anaconda提示符中.之后你可能需要重启你的spyder ide.
我会添加env.close()
你的代码,否则你将关闭窗口的麻烦.
如果您是python/ML/DL的新手,请查看youtube上的"sentdex".非常好的内容开始.(他在他的健身教程中使用了TFlearn)但是由于tensorflow 1.4包含了Keras,我建议使用keras high lvl API作为你的神经网络.
祝你好运,保持深刻
如果有人有一个不错的健身房文档,随时分享.