andreyvoroncov
@andreyvoroncov
мечтатель

Как исправить скрипт, чтобы заработал в 23 версии Cinema4D?

Нашел интересный скрипт, который воплощает алгоритм Game of Life в трехмерном варианте. Полный код скрипта есть в
ссылке

но в моей версии Cinema4d R23 он не работает. В консоли выдает такую ошибку:
Traceback (most recent call last):
  File "Python", line 136, in main
  File "Python", line 120, in update
  File "Python", line 99, in get_next_generation
  File "Python", line 24, in for_each
  File "Python", line 93, in update_cell
  File "Python", line 70, in get_cells_count_around
NameError: name 'xrange' is not defined

Как можно исправить это?
  • Вопрос задан
  • 321 просмотр
Решения вопроса 1
black1277
@black1277
Вольный стрелок
В шести местах замените xrange на range. Эту строку замените:
if self.cells.has_key(i) and self.cells[i].has_key(j) and self.cells[i][j].has_key(k):

на эту:
if i in self.cells and j in self.cells[i] and k in self.cells[i][j]:

и должно заработать. Еще в старых скриптах часто бывает print без скобок, но тут вроде бы нету.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Everything_is_bad
xrange это из python2, так что надо в нем запускать, но сейчас это уже старье
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы