Я пытался создать кучу похожих методов, используя файл конфигурации YAML
.Тем не менее, я не смог найти что-то в сети или выяснить это.
example.yml
attributes:
- a
- b
- c
пример класса
import yaml
class Test:
def __init__(self):
with open('example.yml', 'rb') as f:
attrib_list = yaml.load(f)
_list = []
for name in attrib_list:
_list.append(self.__setattr__('_' + name, None))
# create similar methods in a loop
for name, _ in zip(attrib_list, _list):
@property
def name(self): # I know name is a string so cannot be this way but how if this can be done?
return _
@name.setter
def __set + _(self, v): # __set + '_' + name as method name
pass
@name.getter
def __get + _(self): # __get + '_' + name as method name
pass
Есть ли эффективный способ созданиямного подобных методов таким образом, проходя через файл конфигурации?
Или есть лучший способ обработать что-то подобное?
Спасибо.