То, что я ищу, имеет что-то вроде этого:
self.info['key'].attr2
Но я не уверен, что было бы самым элегантным способом добиться этого. Пока что я определил словарь, как показано ниже, но у меня нет атрибутов из него.
self.info = {}
self.info.update({'key':
{'attr1': 2,
'attr2': lambda: self.func(arg1)}
})
Но тогда мне придется использовать его следующим образом:
self.info['key']['attr2']()
Обратите внимание, что я ищу доступ к значениям словаря, как атрибуты. В этой теме есть ответ, который может быть использован в моем случае также, вероятно, что я делаю объект из под-словаря сверху и передаю его в качестве значения в основной словарь.
Но мне интересно, есть ли более хороший способ, возможно, с декораторами и с меньшим количеством строк кода, и, возможно, даже без использования словарей, что-то вроде того, что я описал в первой строке, возможно, даже лучше, например:
self['key'].attr2