python-3.x - Python csv 读写,(只写保存最后一行)
问题描述
我现在有点卡住了,我有下面的脚本,它从供应商那里打开一个 csv 并生成一个正确的 csv 以便在我的系统中导入。但是,它只保存 veleman64993.csv 给出的最后一行。
我想将“开放”保持在任何事物之外,以及“记录在案”:
import csv
import io
filename = "Vellemantest.csv"
headers = "ID, Verkooprijs, \n"
f = io.open(filename, "w", encoding="utf-8")
f.write(str(headers))
#resultaten opslaan in een record.
records = []
#De resultaten uit de feed halen en verwerken
with open('Velleman64993.csv', 'r') as file:
reader = csv.reader(file, delimiter = ';')
for row in reader:
artikel = (row[0])
prijs = (row[4])
#Standaard een basis array
if artikel:
records.append((artikel, prijs))
for record in records:
#Schrijf de resultaten naar de csv file
f.write(str(record[0]) + ", " + str(record[1]) + "\n")
print(row[0] , row[4])
f.close()
if f.close:
print('CSV opgeslagen')
else:
print('Er is een fout opgetreden met het opslaan')
解决方案
当您在没有“a”选项的情况下打开时,write 函数会覆盖。做这样的事情,
f = io.open(filename, "a", encoding="utf-8") # not "w"
推荐阅读
- reactjs - 使用 fireEvent 发送值
- typescript - Typescript - 导入第三方模块 - 名称自动完成 VSCode
- c# - WPF - 棱镜区域和祖先绑定的相对源问题
- oracle - 使用 logstash 将 300 万条记录从 Oracle 迁移到 Elastic Search
- google-cloud-storage - 重试策略未转发到谷歌客户端
- python - NER 德国自然物体
- html - 固定标题隐藏在导航栏后面
- python - 对于列表中的多个字符串,如何查找字符串中以大写字母开头的所有单词
- python - 如何通过 Selenium 和 Python 使用 classname 属性定位最后一个 Web 元素
- flutter - 在 Dart 中抛出异常的性能成本是多少?