Skip to forum content
PyDev
Форум python-разработчиков
You are not logged in.
Please login or register.
Root
»
Python
»
динамическое создание словарей
You must log in or register to post a new topic
Posts [ 1 to 5 of 5 ]
- Registered: Aug. 1, 2008, 10:14 a.m.
- Posts: 66
бывает нужно создать "пустые" словари для будущего хранения каких-нибудь данных.
т.е. есть список ключей, и по этим ключам будут доступны какие-нибудь списки. что приходит в голову:
propListByTag = {}
for tag in LangByTag.iterkeys():
propListByTag[tag] = []
можете ли предложить более красивое решение?
- Registered: June 9, 2009, 5 p.m.
- Posts: 2
propListByTag = dict((tag, list()) for tag in LangByTag)
- Registered: Feb. 2, 2007, 9:35 p.m.
- Posts: 422
Всё проще :-)
>>> keys = ['a', 'b', 'c']
>>> {}.fromkeys(keys, [])
{'a': [], 'c': [], 'b': []}
Last edited Aug. 11, 2009, 9:28 a.m.
- Registered: Aug. 1, 2008, 10:14 a.m.
- Posts: 66
>>> keys = [1,2,3,4,5]
>>> a = dict((tag, list()) for tag in keys)
>>> print a[1] is a[2]
False
>>> b = {}.fromkeys(keys, list())
>>> print b[1] is b[2]
True
По-моему, первый способ лучше.
- Registered: Feb. 2, 2007, 9:35 p.m.
- Posts: 422
Root
»
Python
»
динамическое создание словарей