В Lua вы можете обратиться ключи словаря, как атрибуты:Lua-как ДИКТ в Python
d = {a = 1, b = 1}
d['a'] == d.a -- this returns true
Есть ли что-то подобное в Python? Я заметил, что объекты скелетного сложения имеют схожие свойства.
В Lua вы можете обратиться ключи словаря, как атрибуты:Lua-как ДИКТ в Python
d = {a = 1, b = 1}
d['a'] == d.a -- this returns true
Есть ли что-то подобное в Python? Я заметил, что объекты скелетного сложения имеют схожие свойства.
Нет, только действительные способы доступа к dict
с помощью ключа являются d['a']
или d.get('a')
Первое может поднять KeyError
если ключ не в dict
, а последний принимает второй необязательный аргумент, что оно вернется, если ключ не найден.
Вы можете создать класс и использовать setattr для доступа к атрибутам таким образом, хотя это кажется излишним для удобства. Вы могли бы сделать это и с любым старым объектом, но я бы не рекомендовал его.
Возможный дубликат [Преобразование Python dict в объект?] (Http://stackoverflow.com/questions/1305532/convert-python-dict-to-object) – IanAuld
Я думаю, одна из причин, по которым Lua использует 'da 'Синтаксический сахар' d ['a'] 'заключается в том, что Lua использует' t: func() 'в своем собственном уникальном стиле ООП. Это не относится к Python. –