Как мне сделать расширенную автонавификацию хеша Python?
Этот вопрос о реализации полной автовивификации Perl в Python. Я знаю, что подобные вопросы задавались ранее, и до сих пор лучший ответ в "Каков наилучший способ реализации вложенных словарей в Python?". Тем не менее, я хочу сделать это:
a['x']['y'].append('z')
без объявленияa['x']['y'] = []
во-первых, точнее, не декларируяa['x'] = {}
или. (Обратите внимание на Perl вы можете сделатьpush @{$a->{x}{y}}, 'z';
.)
я знаюdict
а такжеlist
классы не смешиваются, так что это сложно, но мне интересно посмотреть, есть ли у кого-нибудь гениальное решение, возможно, включающее создание унаследованного класса изdict
но определил новыйappend
метод на это?
Я также знаю, что это может отбросить некоторых пуритан Python, которые попросят меня придерживаться Perl. Но я бы хотел увидеть кое-что даже для вызова.