dict.fromkeys
Возвращает новый словарь, сформированный из указанной последовательности, с указанным значением элементов.
fromkeys(seq[, value])
-> dict Новый словарь, созданный из последовательности.
seq -- Любая последовательность, например список list.
value -- Необязательный аргумент. Значение для каждого элемента списка. Если не задан, в качестве значений используется None.
value -- Необязательный аргумент. Значение для каждого элемента списка. Если не задан, в качестве значений используется None.
Метод предоставляет вспомогательный конструктор, позволяющий создавать словари из последовательностей.
Обратите внимание, что при заданном
my_new_dict = dict.fromkeys(['one', 'two', 3]) # {'one': None, 'two': None, 3: None}
my_new_dict = dict.fromkeys(['one', 'two', 3], 10) # {'one': 10, 'two': 10, 3: 10}
Обратите внимание, что при заданном
value
, значением каждого элемента словаря явится один и тот же экземпляр: # Ошибочная попытка инициализировать все элементы пустыми списками.
my_new_dict = dict.fromkeys([1, 2, 3], [])
# Теперь все ключи указывают на _один_и_тот_же_ список.
my_new_dict[1].append('added')
my_new_dict[2] # ['added']
# А это правильная попытка, при помощи компоновки, но без fromkeys:
my_new_dict = {key: [] for key in [1, 2, 3]}
Синонимы поиска: dict.fromkeys, dict, fromkeys
В разделе «dict (словарь)»:
dict.clear
dict.copy
dict.get
dict.has_key
dict.items
dict.iteritems
dict.iterkeys
dict.itervalues
dict.keys
dict.pop
dict.popitem
dict.setdefault
dict.update
dict.values
На заметку
У нас есть новостная группа в Telegram. Там же можно обсудить интересующие вопросы. Ссылка в самом низу страницы.