Python - 使用List创建字典

时间:2015-10-11 02:40:38

标签: python list python-2.7 dictionary

我在列表中有以下字符串,并且能够使用列表作为字典中的键创建字典并指定默认值''。当我打印时,我看到字典是以相反的顺序为列表中的字符串创建的。为什么会发生这种情况以及如何纠正它。是否需要反向语法?

a = ['hello','bye','tc','iam']
created_dict = dict((bl,'') for bl in a)
print created_dict # {'iam': '', 'bye': '', 'hello': '', 'tc': ''}

需要更改以获得以下结果。

expected result : {'hello': '', 'bye': '', 'tc': '', 'iam': ''}

在列表

中使用数字时维护顺序

1 个答案:

答案 0 :(得分:2)

Python中的常规字典没有关键顺序的概念,您需要OrderedDict

from collections import OrderedDict
o = OrderedDict.fromkeys(['hello', 'bye', 'tc', 'iam'], '')                    
repr(o)
OrderedDict([('hello', ''), ('bye', ''), ('tc', ''), ('iam', '')])