У меня есть объектный класс, которому предоставляется словарь на __init__()
, который, в свою очередь, содержит вложенные словари. То, что я хочу сделать, - это создать ярлык для (в данном случае) списка, который скрыт несколькими слоями в dict.
Очевидно, это будет работать:
class Example(object):
def __init__(self, foo: dict):
self.shortcut = foo['a']['b']['c']
Проблема в том, что я хотел бы сделать это таким образом, чтобы Eclipse / PyDev знал, что foo['a']['b']['c']
список (и, следовательно, self.shortcut
), аналогично тому, как добавление :dict
сообщает PyDev, что foo - это словарь.
Самое близкое, что я нашел к решению:
self.shortcut = list( foo['a']['b']['c'] )
Но это делает копию, и я хочу сохранить ссылку на foo. Я мог бы повернуться и выполнить задание в обратном порядке, выполнив его с
foo['a']['b']['c'] = self.shortcut
Но это ... это просто оскорбляет мои чувства программирования.