Форум сайта python.su
Что то не могу понять как работает такая конструкция
a = {}
a.setdefault("a", []).append(['1','2'])
print a
{'a': [['1', '2']]}
Офлайн
>>> help({}.setdefault)
Help on built-in function setdefault:
setdefault(...)
D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D
Офлайн
a.setdefault(“a”, )
устанавливает a={“a”:}, т.е. обращение происходит к a и присваивает значение , т.к. такого ключа ещё не было.
и возвращает значение a =
список a= получает команду append
т.е. в список добавляется список.
итого: получаем то, что получили
Офлайн
Всем спасибо, теперь понял.
Офлайн
bwможно получить то же самое так:
>>> help({}.setdefault)
{}.setdefault.__doc__
Офлайн