我有以下代码:
for i in xrange(len(arr_id)):
list.append({'id': arr_id[i], 'porcentaje' : 0, 'estado' : 'En funcionamiento'})
如果我打印list
似乎我得到了一个按字母顺序排列的列表:[{'estado': 'En funcionamiento', 'id': 0, 'porcentaje': 0}]
这与我定义的顺序不同:[{'id': 0, 'porcentaje': 0, 'estado': 'En funcionamiento',}]
我该怎么做才能维持所需的秩序?在
首先,你现在不是在处理名单。你在处理一个嵌套在列表中的单词(这是毫无意义的,因为列表中只有一个条目)
你不能“排序”一个单词,因为从一个键中获取它的值太容易了。在您的情况下:
所以没有必要对措辞进行分类。在
虽然你可以显示你的dict的排序表示,但它只用于打印目的。在
^{pr2}$或者正如其他答案所指出的,你可以用OrderedDict来保持你的口述顺序
首先,列表将保持顺序,但列表中的字典不会,因为字典从定义上讲是无序的。有一个名为^{} 的数据类型可以保留顺序,但我怀疑您是否真的需要它。在
其他一些评论:
不要使用
list
作为变量名。在不要像Python是C一样迭代,可以直接迭代:
或者使用list comprehension:
^{pr2}$相关问题 更多 >
编程相关推荐