нужно было реализовать D0L и S0L системы (детерминированная/стохастическая системы Линденмайера), и для удобства в литературе у них есть четкий способ определения
аксиома
правило 1
правило 2
...
правило n
я реализовал класс так, что приведенный выше способ был repr класса и с помощью этой строки можно было получить объект
нормальный подход?
Скорее всего нет. Формат данных должен быть таким, чтобы можно было отрефакторить внутреннюю структуру и всё равно быть в состоянии его прочитать Ну и очень желательно не позволять через него произвольный код выполнять
там нет ни одного eval или чего-то близкого, говоря о произвольном коде просто строка парсилась в несколько внутренних объектов
ну надо смотреть тогда как ты сделал split. Чтобы оно корректно работало со скобками, кавычками, запятыми и прочими возможными данным
мне показалось это немного костыльным, но текст в ValueError используется для диалоговых окон считай обычный сплит, который накладывает небольшие ограничения на способ задания системы
выглядит как будто у тебя всё сломается если юзер захочет видеть строку " -> " в своем меню как текст
да, так и будет))
Обсуждают сегодня