【问题标题】:How do I write all the lines into a csv file, not just the last line?如何将所有行写入 csv 文件,而不仅仅是最后一行?
【发布时间】:2021-03-22 04:53:56
【问题描述】:

如何将完整的表格写入新的 CSV 文件?我已经遍历了必要的元组,但我只得到了最后一行。

当我将“表格”打印到终端时,我得到了整个行和列,但是当我尝试将行/列插入 CSV 文件时,它只显示表格的最后一行。我该如何改变?

最终目标是将其与另一个文件合并并使用 pandas 创建一个表。

这是我迄今为止尝试过的事情之一:

for row in zip(*([key] + (value) for key, value in sorted(dicti.items()))):
    table = [(*row,)]
    #print(table)
    with open('newfile.csv','w') as f:
        csv_f=csv.writer(f)
        csv_f.writerow(['first','middle', 'last'])
        for row in table:
            csv_f.writerow(row)
            csv_f.writerow('\n')

谢谢,您的帮助将不胜感激。我可以根据需要提供更多信息。

【问题讨论】:

  • 您提供的示例输入数据与示例输出不匹配 - 您有 3 个不同长度的列表,无法在 3 个之间建立关联,但您知道其中一个人没有中间名.
  • 感谢您的意见,它帮助我改进了代码以适应等于 'NULL' 的名称

标签: python pandas list dataframe csv


【解决方案1】:

在标准库中有一个函数,它接受 n 个列表并生成包含每个列表元素的元组:

https://docs.python.org/3.9/library/functions.html#zip

【讨论】:

    猜你喜欢
    • 2021-01-08
    • 1970-01-01
    • 1970-01-01
    • 2021-06-07
    • 1970-01-01
    • 1970-01-01
    • 2019-10-17
    • 1970-01-01
    • 2014-04-24
    相关资源
    最近更新 更多