我该如何按原来的顺序把字典打印出来?
如果我有这样的字典:

smallestCars = {'Civic96': 12.5, 'Camry98':13.2, 'Sentra98': 13.8}

我这样做:
for cars in smallestCars:
    print cars

它输出:
Sentra98
Civic96
Camry98

但我想要的是:
Civic96
Camry98
Sentra98

有没有一种方法可以按顺序打印原始词典而不将其转换为列表?

最佳答案

普通字典没有顺序。您需要使用OrderedDict模块的collections,它可以获取列表或元组列表,如下所示:

import collections

key_value_pairs = [('Civic86', 12.5),
                   ('Camry98', 13.2),
                   ('Sentra98', 13.8)]
smallestCars = collections.OrderedDict(key_value_pairs)

for car in smallestCars:
    print(car)

输出为:
Civic96
Camry98
Sentra98

10-08 11:15