如何通过 python 将行追加到 csv 文件中,并用逗号分隔新行和上一行

所以..在这个 CSV 文件中,当我通过 python 附加新行时,它直接与前一行对齐。第二次打开代码时,会出现此错误,直到我实际通过 CSV 文件(在写字板中)本身添加空格。


Traceback (most recent call last):

File "C:\Users\mathew\Desktop\COMPUTER PROJECT - UNIVERSITY.py", line 300, in <module>

    NAME[row[0]]={'COUNTRY':row[1],'COURSE':row[2],'E-MAIL':row[3]}

IndexError: list index out of range

这是代码片段。


p=[Name,c.capitalize(),co,e.lower()] 

with open ("list1.csv",'a') as r:

        w=csv.writer(r)

        w.writerow(p)

import csv

with open("list1.csv",'r') as fh:

       NAME={}

       s = csv.reader(fh)

       for row in s:

              NAME[row[0]]={'COUNTRY':row[1],'COURSE':row[2],'E-MAIL':row[3]}

我认为这是一个非常愚蠢的错误......但我是编码新手,所以我是否遗漏了代码的任何部分。任何帮助表示赞赏。


HUX布斯
浏览 121回答 1
1回答

临摹微笑

如果您查看文档,当他们打开文件时,他们会添加一个换行符。&nbsp; &nbsp; import csv&nbsp; &nbsp; with open('eggs.csv', newline='') as csvfile:&nbsp; &nbsp; &nbsp; &nbsp; spamreader = csv.reader(csvfile)&nbsp; &nbsp; &nbsp; &nbsp; for row in spamreader:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; print(', '.join(row))&nbsp; &nbsp; import csv&nbsp; &nbsp; with open('eggs.csv', 'w', newline='') as csvfile:&nbsp; &nbsp; &nbsp; &nbsp; spamwriter = csv.writer(csvfile)&nbsp; &nbsp; &nbsp; &nbsp; spamwriter.writerow(['Spam'] * 5 + ['Baked Beans'])&nbsp; &nbsp; &nbsp; &nbsp; spamwriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam'])对于从文件中读取行的部分,您应该检查每行是否包含您需要的 4 个项目。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python