【问题标题】:Add list elements to csv将列表元素添加到 csv
【发布时间】:2020-01-01 17:49:57
【问题描述】:

我创建了各种列表,并希望将它们写入 csv 文件。 这意味着有 清单 A 清单 B 清单 C 列表 D - 等等

我尝试将列表总结如下

adress_label = [Anrede.anrede[0], Titel.titel[0], Name.vorname[0], Name.nachname[0], Adress_zus.adress_zus[0],
            Strasse.strasse[0], str(PLZ.plz[0]), Stadt.stadt[0]]


with open('adress_list.csv', 'w') as adress_list:
    adress_writer = csv.writer(adress_list, delimiter=',', quotechar="'", quoting=csv.QUOTE_MINIMAL)

adress_writer.writerow(adress_label)

但是,结果未正确写入 csv 文件。 各种列表的结果写入 1 列,而不是每个列表元素 1 列。

很遗憾,我没有在论坛中找到我的问题的答案。 如何在 Python 中将不同的列表元素添加到 csv 文件?

【问题讨论】:

  • 在您的代码示例中,您只需将标签写入文件,这对我来说没有问题。 (顺便说一句,在你的问题中修正你的身份)
  • 请打印您列表中的一些数据。您可能对使用 pandas 和 to_csv 函数感兴趣。

标签: python-3.x export-to-csv


【解决方案1】:

我创建了一个示例来帮助您更好地理解它是如何工作的。使用 writer.writerow 将数据打印到每列的 csv 中,使用 writer.writerows 每行打印数据。此外,zip 是多个列表的迭代器.

import numpy as np
import csv

listA = [ {"name":"Text1","age":30},{"name":"Text4","age":20} ]
listB = [ {"name":"Text2","age":40},{"name":"Text5","age":35} ]
listC = [ {"name":"Text3","age":50},{"name":"Text6","age":70} ]

with open('address_list.csv', 'w', newline='') as file:
    writer = csv.writer(file)
    for (a,b,c) in zip(listA,listB,listC):
        writer.writerow([a['name']])

【讨论】:

  • 感谢您的回答,但我的主要问题是:如何在 csv 的不同列中编写不同的列表?每个列表中都有一个值。每个值都应该在一列中。
  • @pythonHD 在我的回答中我有 3 个列表为您的案例添加第 4 个
  • 我修改了解决方案,现在我的程序可以工作了。感谢您的帮助!
  • @pythonHD 下次尝试按照网站标准提问how-to-ask
猜你喜欢
  • 2014-06-16
  • 2016-06-02
  • 1970-01-01
  • 1970-01-01
  • 2017-09-09
相关资源
最近更新 更多