setdefault () не вставляет ключ по умолчанию для вложенного словаря в python - PullRequest
0 голосов
/ 07 мая 2020

Структура словаря:

storage = {}   
storage['first'] = {}   
storage['middle'] = {}  
storage['last'] = {}

Первая вставка, сделанная в этот словарь:

me = 'Magnus Lie Hetland'   
storage['first']['Magnus'] = [me]  
storage['middle']['Lie'] = [me] 
storage['last']['Hetland'] = [me]

Затем выполняются следующие операторы:

my_sister = 'Anne Lie Hetland'
storage['first'].setdefault('Anne', []).append(my_sister)

Согласно документации, setdefault должен вставить ключ 'Anne' со значением [] (New Empty list), а затем он должен добавить my_sister. Итак, почему он добавляет my_sister к уже существующему списку, а не создает новый список.

...