У меня есть список ['a','b','c','d'].Мне нужно создать dict из этого списка со всеми элементами списка в качестве ключей в dict с некоторым значением по умолчанию для всех элементов, таких как None.
['a','b','c','d']
dict
None
Как это сделать?Мне нужно написать функцию для этого или есть конструктор?
См. dict.fromkeys().
dict.fromkeys()
dict.fromkeys(['a','b','c','d']) вернет словарь с None для всех его значений.
dict.fromkeys(['a','b','c','d'])
dict.fromkeys(['a','b','c','d'], foo) вернет словарьс foo для всех его значений.
dict.fromkeys(['a','b','c','d'], foo)
foo
Вы можете попробовать:
dict.fromkeys(data, default_value)
Если вы опустите default_value, по умолчанию будет None.
default_value
Вы можете использовать генератор, чтобы быстро преобразовать его в словарь:
dict((x, None) for x in L)
(где L - ваш список)
В результате:
{'a': None, 'c': None, 'b': None, 'd': None}
lst = ['a','b','c','d'] # using list comprehension d = dict([(x, None) for x in lst]) # using fromkeys d = dict.fromkeys(lst)