Python Ошибка - ошибка типа: элемент 1 в _argtypes_ передает объединение по значению, которое не поддерживается - PullRequest
3 голосов
/ 24 января 2020

Я думаю, что это не ошибка программирования, заданная c, но вызванная некоторыми библиотеками.

Я переношу свой проект на новый P C, который я недавно настроил с помощью anaconda и др c. используя python 3.7.6. Выполнение задачи на старой машине работает нормально, здесь я также использовал anaconda с python 3.7 (не уверен, что это был 3.7.6, но я мог проверить это, я просто использовал при создании среды python = 3.7).

Когда я сейчас пытаюсь запустить свою программу, я получаю:

Exception in Tkinter callback
Traceback (most recent call last):
...    
TypeError: item 1 in _argtypes_ passes a union by value, which is unsupported.

Ошибка довольно длинная, но она вызвана следующими библиотеками: вызовом gym.envs, который затем вызывает некоторый pyglet. libs

Последняя строка ошибки:

...from pyglet.libs.x11 import xlib
  File "...7/lib/python3.7/site-packages/pyglet/libs/x11/xlib.py", line 2928, in <module>
    XEHeadOfExtensionList.argtypes = [XEDataObject]

Спасибо за помощь! Я не знаю, как решить это или даже начать решать это.

1 Ответ

4 голосов
/ 25 января 2020

Кажется, что в настоящее время просто нет поддержки использования gym + pyglet в python версии 3.7.6 +.

Ошибка pyglet исправлена ​​в 1.4.9+, но гимнастика в настоящее время не совместима с эти версии.

Тем не менее, можно просто понизить python до 3.7.4, и все работает нормально, как и предполагалось.

...