Как мне динамически создавать свойства в Python?

Предположим, у меня есть такой класс:

class Alphabet(object):
     __init__(self):
         self.__dict = {'a': 1, 'b': 2, ... 'z': 26}

     @property
     def a(self):
         return self.__dict['a']

     @property
     def b(self):
         return self.__dict['b']

     ...

     @property
     def z(self)
         return self.__dict['z']

Это было бы длинной и громоздкой задачей для определения, и она кажется крайне избыточной. Есть ли способ динамически создавать эти свойства? Я знаю, что вы можете динамически создавать атрибуты с помощью встроенного setattr, но я хочу иметь контроль над доступом для чтения / записи / удаления (по этой причине я хочу использовать свойство). Спасибо!

Ответы на вопрос(2)

Ваш ответ на вопрос