这个程序需要使用两个循环遍历数组,并将第一个集合中不是数字的所有内容作为键。但字典中添加的键的顺序与我的预期不符。这个类还有更多的代码,但下面是让我困扰的部分。
class Sorter():
def __init__(self, vals):
self.vals = vals
def borda(self):
bordaContainer = { }
arrayLength = len(self.vals)
for outsides in range(arrayLength):
for insides in range(len(self.vals[outsides])):
currentChoice = self.vals[outsides][insides]
if outsides ==0 and insides != len(self.vals[outsides])-1:
bordaContainer[currentChoice] = ''
return bordaContainer
inputArray = [['A','B','C','D',10],['C','D','B','A',4],['D','A','B','C',7]]
first = Sorter(inputArray)
print first.borda()
结果如下:
{'A': '', 'C': '', 'B': '', 'D': ''}
我应该得到 {'A': '', 'B': '', 'C': '', 'D': ''}。能否解释一下发生了什么,谢谢!
collections
模块中的OrderedDict
。 - tzamanOrderedDict
。https://docs.python.org/2/library/collections.html#collections.OrderedDict - ashwinjv