reader
单行读取
import csv
# 读取csv
csvFile = open("instance.csv", "r")
reader = csv.reader(csvFile)
# 遍历
for item in reader:
print(item)
# ['name', 'score']
# ['Zhang', '100']
# ['Wang', '80']
# ['Li', '90']
writer
单行写入
import csv
# 新增的数据行,以列表的形式表示
add_info = ["Guo", 150]
# 以添加的形式写入csv,跟处理txt文件一样,设定关键字"a",表追加
csvFile = open("instance.csv", "a")
# 新建对象writer
writer = csv.writer(csvFile)
# 写入,参数还是列表形式
writer.writerow(add_info)
csvFile.close()
DictReader
读取出来是字典
import csv
csvFile = open("instance.csv", "r")
dict_reader = csv.DictReader(csvFile)
for row in dict_reader:
print(row)
DictWriter
写入字典数据
import csv
csvFile = open("instance.csv", "a",newline="")
# 文件头以列表的形式传入函数,列表的每个元素表示每一列的标识
fileheader = ["name", "score"]
writer = csv.DictWriter(csvFile, fileheader)
writer.writeheader() # 写头部
# 但是如果此时直接写入内容,会导致没有数据名,所以,应先写数据名(也就是我们上面定义的文件头)。
# 写数据名,可以自己写如下代码完成:
# 之后,按照(属性:数据)的形式,将字典写入CSV文档即可
writer.writerow({"name": "Li", "score": "80"})
csvFile.close()