好的,所以我有一个包含列表的值的字典,这是我一直在寻找的...我想知道是否有办法对此进行排序,这也将显示值单独列中的列表...我已使用此代码将值拆分为不同的列:
writer = csv.writer(csvfile, delimiter=',')
for key, value in finaldict.iteritems():
writer.writerow([key] + value)
有没有办法在写这个键之前对它进行排序?我似乎尝试的任何东西要么不对它进行排序,产生错误,要么将其更改列表的部分分成不同的列...所以如果你不理解我所说的例如让我们说我有一本字典
finaldict = {'A': [2 , 1], 'C' [3, 3], 'B' [4, 3]}
我在excel文件中寻找这个:
Parameter Val1 Val2
A 2 1
B 4 3
C 3 3
但目前我明白了:
Parameter Val1 Val2
A 2 1
C 3 3
B 4 3
我很感谢回复的人谢谢你们!
答案 0 :(得分:3)
另一个答案的替代方案(有点清洁,imho):
for key in sorted(finaldict.keys()):
writer.writerow([key] + finaldict[key])
答案 1 :(得分:2)
使用sorted
返回包含键和值的元组列表,然后改为编写:
for key, value in sorted(finaldict.iteritems(), key=lambda: L[0]):
writer.writerow([key] + value)