1

我正在尝试导出data到 csv,其中数据中的项目是两个长度不等的列表。

import csv

item_dictionary = {'13742': 'cat', '25037':'dog'}
names = item_dictionary.values()

data = [[1, 2, 3, 4, 5, 6], [7, 8, 9, 10]]

export_data = zip(*data)

myfile = open('sample.csv', 'wb')
wr = csv.writer(myfile)
wr.writerow(names)
wr.writerows(export_data)
myfile.close()

这给了我这个输出,其中不包括 5 和 6 in data[0]

dog  cat
1    7
2    8
3    9
4    10

我想要的是这样的:

dog  cat
1    7
2    8
3    9
4    10
5
6

如何修改我的代码以包含 的所有值data[0]而不受 的长度限制data[1]

4

1 回答 1

5

实际上,zip停止它到达最短可迭代的末尾。 itertools.izip_longest是当您想要压缩到最长可迭代的末尾时使用的函数。

import itertools
export_data = itertools.izip_longest(*data, fillvalue = '')
于 2012-11-01T22:20:15.673 回答