当我使用以下方式单独打印时,我有两个列表:
writer.writerows(list_)
我得到了
LIST_1:
0 -0.00042 0.004813 0.010428 0.051006
1 0.000053 0.004531 0.010447 0.051962
2 0.000589 0.004518 0.009801 0.052226
3 0.000083 0.004581 0.010362 0.052288
4 -0.000192 0.003726 0.011258 0.051094
5 0.000281 0.004078 0.01008 0.052156
list_2:
-0.000419554 -0.000366128 0.000223134 0.000306416 0.000114709
我已经整整一天尝试将list_2添加为list_1的另一列并将其写入csv文件。我认为这很简单,但卡住了。我感谢任何帮助。
答案 0 :(得分:3)
一种通用解决方案,它结合了两个列表(或其他可迭代)列中的列:
import csv
import itertools
import sys
def combine_columns(iterable1, iterable2):
for x, y in itertools.izip(iterable1, iterable2):
yield list(x) + list(y)
list1 = [[11, 12, 13], [21, 22, 23]]
list2 = [[14, 15], [24, 25]]
writer = csv.writer(sys.stdout)
writer.writerows(combine_columns(list1, list2))
输出:
11,12,13,14,15
21,22,23,24,25
答案 1 :(得分:1)
这是一个例子,不知道你的数据是什么样的,所以我不得不猜测:
list_1 = [
[1,2,3],
[4,5,6],
[7,8,9],
]
list_2 = [10,20,30]
list_1 = [row + [col] for row, col in zip(list_1, list_2)]
for row in list_1:
print row
输出:
[1, 2, 3, 10]
[4, 5, 6, 20]
[7, 8, 9, 30]
现在list_1将list_2作为新列,您可以使用csv模块将其写出来。