Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python将列表中的数据保存到CSV中的列中_Python_List_Csv - Fatal编程技术网

Python将列表中的数据保存到CSV中的列中

Python将列表中的数据保存到CSV中的列中,python,list,csv,Python,List,Csv,我的列表每次都是动态生成的,但在本例中,列表的基本范围可以是0-24。列表由my函数拆分并写入CSV文件。下面是一些代码: numSeq = range(25) def split_list(alist, rows): length = len(alist) return [alist [i*length // rows: (i+1)*length // rows] for i in range(rows)] with open(csvfile, "w") as output

我的列表每次都是动态生成的,但在本例中,列表的基本范围可以是0-24。列表由my函数拆分并写入CSV文件。下面是一些代码:

numSeq = range(25)

def split_list(alist, rows):
    length = len(alist)
    return [alist [i*length // rows: (i+1)*length // rows] for i in range(rows)]

with open(csvfile, "w") as output:
    writer = csv.writer(output, lineterminator='\n')
    writer.writerows(split_list(numSeq, 5))
这个很好用。问题是,我想把它分成列而不是行。具体而言,它是这样写入CSV的:

00,01,02,03,04
05,06,07,08,09
10,11,12,13,14
15,16,17,18,19
20,21,22,23,24
00,05,10,15,20
01,06,11,16,21
02,07,12,17,22
03,08,13,18,23
04,09,14,19,24
但是,我需要它像这样拆分和编写:

00,01,02,03,04
05,06,07,08,09
10,11,12,13,14
15,16,17,18,19
20,21,22,23,24
00,05,10,15,20
01,06,11,16,21
02,07,12,17,22
03,08,13,18,23
04,09,14,19,24
你知道我该怎么做吗?提前谢谢


对不起,格式不好,我在手机上

您可以使用以下函数转换生成的列表:

writer.writerows(zip(*split_list(numSeq, 5)))
例如:

>>> lst = [[1, 2, 3], [4, 5, 6]]
>>> zip(*lst)
[(1, 4), (2, 5), (3, 6)] 

查看解决方案:这非常有效!我不知道zip这么简单。谢谢你的快速回答。