У меня есть часть моей программы python, которая сгенерирована, сгенерированные коды содержат много вложенных if
/else
, моя проблема в том, что много может быть слишком много, и я получил эту ошибку при запуске моего код:
IndentationError: слишком много уровней отступа
Я читал, что это было некоторое ограничение, определенное на низком уровне интерпретатора python, кто-нибудь знает, как я могу найти обходное решение для него? Некоторые параметры интерпретатора были бы точными, единственное решение, которое я нашел, предлагает перекомпилировать Python, чтобы установить другое значение для MAXINDENT
постоянный, что не совсем то, о чем я мечтаю.
EDIT: код представляет собой большую группу вложенных if...else
, он грязный, но быстрее всего я обнаружил, что Python представляет собой сложное дерево решений. Я знаю, насколько это грязно; Я сам его не писал - я даже не планировал его редактировать (я бы скорее прикоснулся к генератору).
Я знаю, что смогу смоделировать это дерево решений в других моделях. Я бы хотел, чтобы это было проще, например, по возможности настроить интерпретатор.
EDIT 2: теперь я сделал несколько рефакторингов, и мое дерево хранится как словарь: при загрузке файла появляется новая ошибка:
s_push: переполнение стека парсеров
MemoryError
Здесь снова я нашел ресурс, предлагающий некоторые настройки заголовков интерпретатора.