Man*_*shi 1 python python-2.7 python-3.x
我正在使用列表值作为键创建字典.现在我希望字典键的顺序与列表值相同.请找到以下代码:
dict = {}
category_list = [u'Customer', u'Consumers', u'OpenERP Partners', u'Basic Partner', u'Retailers', u'Supplier']
for category in category_list:
dict[category] = 0.0
print "dict--->", dict
Run Code Online (Sandbox Code Playgroud)
我得到一个输出:
dict--->{u'Customer': 0.0, u'Consumers': 0.0, u'Basic Partner': 0.0, u'Supplier': 0.0, u'Retailers': 0.0, u'OpenERP Partners': 0.0}
Run Code Online (Sandbox Code Playgroud)
但我希望字典键的顺序与列表相同.即输出应该像:
dict--->{u'Customer': 0.0, u'Consumers': 0.0, u'OpenERP Partners': 0.0, u'Basic Partner': 0.0, u'Retailers': 0.0, u'Supplier': 0.0,}
Run Code Online (Sandbox Code Playgroud)
你需要使用一个OrderedDict.例如:
>>> import collections
>>> d = collections.OrderedDict()
>>> category_list = [u'Customer', u'Consumers', u'OpenERP Partners', u'Basic Partner', u'Retailers', u'Supplier']
>>> for category in category_list:
... d[category] = 0.0
...
>>> print d
OrderedDict([(u'Customer', 0.0), (u'Consumers', 0.0), (u'OpenERP Partners', 0.0), (u'Basic Partner', 0.0), (u'Retailers', 0.0), (u'Supplier', 0.0)])
Run Code Online (Sandbox Code Playgroud)
另外,dict已经在python中用于引用dict类,因此您应该避免将其用作变量名.
| 归档时间: |
|
| 查看次数: |
278 次 |
| 最近记录: |