Pyglet - TypeError: ожидаемая строка или буфер

Я пытаюсь использовать pyglet вместо pygame, потому что он поддерживает несколько экранов. это пример кода, который я запускаю:

import pyglet

display = pyglet.canvas.get_display()
screens = display.get_screens()
window = pyglet.window.Window(fullscreen=True, screen=screens[1])

pyglet.app.run()

и я получаю эту ошибку:

Отслеживание (последний вызов последним): файл "/home/pi/netcomShopTV/idk.py", строка 5, в файле window = pyglet.window.Window() "/usr/local/lib/python2.7/dist-packages / pyglet / init.py ", строка 359, в файле импорта getattr (имя_импорта)"/usr/local/lib/python2.7/dist-packages/pyglet/window/ init.py ", строка 1890, в gl._create_shadow_window() Файл "/usr/local/lib/python2.7/dist-packages/pyglet/gl/init.py", строка 209, в _create_shadow_window _shadow_window = Window(width=1, height=1, visible=False) Файл "/usr/local/lib/python2.7/dist-packages/pyglet/window/xlib/init.py", строка 171, в init super(XlibWindow, self).в этом(*args, **kwargs) Файл "/usr/local/lib/python2.7/dist-packages/pyglet/window/init.py", строка 642, в файле init self._create() "/usr / local /lib/python2.7/dist-packages/pyglet/window/xlib/ init.py ", строка 265, в _create self.context.set_vsync(self._vsync) # XXX? Файл "/usr/local/lib/python2.7/dist-packages/pyglet/gl/xlib.py", строка 265, в set_vsync warnings.warn(e) TypeError: ожидаемая строка или буфер

Версия Pyglet: 1.4.8

Я искал в Интернете, не нашел ничего, что могло бы решить эту проблему.

2 ответа

Решение

Похоже, что эта ошибка возникла в результате недавнего изменения. Вы обязательно должны поднять егоpyglet трекер проблем на github.

А пока попробуйте установить версию до 1.4.8. (Я подозреваю, что это может просто привести к сбою при неудачной синхронизации, а не к попытке предупредить вас, а затем к сбою:)).

Как упоминал @alecxe, это была ошибка. После того, как я открыл тикет на github, я получил решение:

Это исключение для конкретной проблемы с Raspberry Pi. Он должен выдать предупреждение и пройти без сбоев. Если возможно, не могли бы вы попробовать отредактировать строку 265 в /usr/local/lib/python2.7/dist-packages/pyglet/gl/xlib.py и изменить:

warnings.warn (e) в warnings.warn(e.message)

Другие вопросы по тегам