Python - TypeError: неподдерживаемые типы операндов для +: 'zip' и 'int' - PullRequest
0 голосов
/ 24 января 2020

Я изменяю некоторый код Python 2.7 для совместимости с Python 3.7. Я сделал столько правок, сколько смог, пока это не произойдет:

C:\Users\AyazA\Desktop\schema-games>python schema_games/breakout/play.py StandardBreakout
pygame 1.9.6
Hello from the pygame community. https://www.pygame.org/contribute.html
[34m--------------------------------------------------------------------------------[0m
[34mStarting interactive game. Press <ESC> at any moment to terminate.[0m
[34m--------------------------------------------------------------------------------[0m
Traceback (most recent call last):
  File "schema_games/breakout/play.py", line 93, in <module>
    play_game(getattr(games, variant), debug=debug, cheat_mode=cheat_mode)
  File "schema_games/breakout/play.py", line 54, in play_game
    play(env, fps=fps, keys_to_action=keys_to_action, zoom=ZOOM_FACTOR)
  File "C:\Python37\lib\site-packages\gym\utils\play.py", line 79, in play
    env.reset()
  File "C:\Users\AyazA\Desktop\schema-games\schema_games\breakout\core.py", line 301, in reset
    self.layout_sanity_check()
  File "C:\Users\AyazA\Desktop\schema-games\schema_games\breakout\core.py", line 473, in layout_sanity_check
    all_occupied_nzis = [nzi for obj in considered_objects
  File "C:\Users\AyazA\Desktop\schema-games\schema_games\breakout\core.py", line 474, in <listcomp>
    for nzi in obj.offset_nzis if obj.visible]
  File "C:\Users\AyazA\Desktop\schema-games\schema_games\breakout\objects.py", line 190, in offset_nzis
    offset_nzis_from_position(self._nzis, self._position)
  File "C:\Users\AyazA\Desktop\schema-games\schema_games\breakout\utils.py", line 57, in offset_nzis_from_position
    return zip(*(np.add(nzis, np.array(pos))).T)
TypeError: unsupported operand type(s) for +: 'zip' and 'int'

Я попытался разархивировать содержимое архива, но это было бесполезно. Я попытался еще глубже изучить необходимость добавления двух (оба pos и nzis имеют тип ndarray), только чтобы не работать. Это еще одна Python 2.7 несовместимость, которую мне не хватает? Здесь - исходный код и соответствующий репозиторий , который я разветвил с

1 Ответ

1 голос
/ 24 января 2020

Ложная тревога. Это был набор проблем в самом файле. Было много случаев использования функции zip, которую нужно было заменить на list(zip).

...