个人建站模板,网站建设中最重要的是什么,网站开发后需要交接哪些材料,免费建站公司联系方式关于如何使用zip合并数据以及转置列表的一些提示。这听起来像是如何转置csv是你真正的问题。如何转置csv的答案是将其放入列表列表(例如通过csv模块)#xff0c;然后将其转置并写回文件(如果需要)。在row1 [1,2,3]row2 [a, b, c]list(zip(row1, row2))Out[45]: [(1, a), (2,…关于如何使用zip合并数据以及转置列表的一些提示。这听起来像是如何转置csv是你真正的问题。如何转置csv的答案是将其放入列表列表(例如通过csv模块)然后将其转置并写回文件(如果需要)。在row1 [1,2,3]row2 [a, b, c]list(zip(row1, row2))Out[45]: [(1, a), (2, b), (3, c)]z list(zip(row1, row2))list(zip(*z))Out[47]: [(1, 2, 3), (a, b, c)]y list(zip(*z))yOut[49]: [(1, 2, 3), (a, b, c)]list(zip(*y))Out[50]: [(1, a), (2, b), (3, c)]或者如果您安装了numpy或pandas这两种方法都可以在最多3行代码中使用read_file/transpose_matrix/write_transposed_to_文件所以根据你的代码我会读所有的文件把它们放在内存里然后再进行转置写。我想如果你改变这一部分它会成功的(我没有亲自测试)。在^{pr2}$如果每个原始文件没有严格的1行那么将得到有趣的结果。在更新我举了一个小例子。在files list(abcd)file_rows [files]for filename in [range(i, i4) for i in range(0, 12, 4)]:tmp_rows []fake_csv [list(filename)]for row in fake_csv:tmp_rows [row] # change to [row, row] to see what happens# in case of multiple rows in original csvfile_rows tmp_rowstransposed list(zip(*file_rows))print(transposed)在完成测试代码之后我稍微调整了一下原始代码使其列在列表中这是唯一的事情。所以如果你在改变之后仍然得到有趣的结果那是因为你没有统一的输入数据在这种情况下你需要决定如何处理。例如zip将静默地只输出所有原始行的最短列表的长度。要修复此问题您需要以代码方式添加到以便所有列表的长度与最长的行相同。在