Я пытаюсь использовать YAML, поскольку мне нравится его читаемость.PyYAML - как бороться с композицией
Тем не менее, я немного озадачен наилучшим способом вставить компоненты/иметь дело с композицией.
Скажем, у меня есть это как класс я пытаюсь повторить:
basicai = aggressiveAI()
fightercomponent = fighter(strength=10, dexterity=5, death=dramaticdeath())
orc = Object(name='orc', hp=100, fighter=fightercomponent, ai=basicai)
Как бы лучший способ сделать что-то вроде этого в YAML?
В основном, я хотел бы иметь возможность не иметь длинный список специально названных компонентных объектов и основных объектов, которые все распространяются.
Итак, вы создаете 'orc' и присваиваете значение переменной, которую мы не знаем в' fighter', а затем вы изменяете значение этой переменной ... что вы хотите показать с этим? Ваш код запутан. – flyx
Кроме того, ваш код YAML недействителен и не помогает продемонстрировать, что вы хотите сделать. 'агрессивныйAI()' кажется вызовом, что это делает в данных YAML? '=' не является особым символом в YAML, вы, вероятно, хотите иметь ':'. – flyx
Извините, я немного изменил его для ясности - данные YAML были всего лишь некоторым псевдокодом для того типа, которого я пытался достичь. Хотя, кажется, работает отлично для меня в коде YAML. – Retro