【发布时间】:2017-06-01 16:40:02
【问题描述】:
我正在尝试使用 OrderedDict 打印有序字典,但是当我打印它时,“OrderedDict”也会打印出来。仅供参考,这只是一个代码段,而不是整个代码。我能做些什么来解决这个问题?我正在使用 Python 3.2
看起来像这样:
def returnAllStats(ints):
choices = ["Yes","No"]
dictInfo = {"Calories":ints[2], "Servings per Container":ints[0], "Amount per Serving":ints[1], "Total Fat":(ints[3]/100)*ints[2], "Saturated Fat":(ints[4]/100)*(ints[3]/100)*ints[2], "Cholesterol":ints[5], "Fiber":ints[6], "Sugar":ints[7], "Protein":ints[8], "Sodium":ints[9], "USA":choices[ints[10]], "Caffeine":ints[11]}
dictInfo = collections.OrderedDict(dictInfo)
return dictInfo
我在写入的文本文件中得到了这个:
('snack', 'bananana')OrderedDict([('USA', 'No'), ('Sodium', 119), ('Calories', 479), ('Servings per Container', 7), ('Sugar', 49), ('Saturated Fat', 37.553599999999996), ('Total Fat', 234.71), ('Cholesterol', 87), ('Amount per Serving', 40), ('Fiber', 1), ('Caffeine', 7), ('Protein', 53)])
谢谢!
【问题讨论】:
-
您知道,在您的示例中,
dictInfo的输出顺序是 UNORDERED,因为您首先创建了一个常规 dict,然后再创建一个OrderedDict,对吧?
标签: python python-3.x dictionary ordereddictionary