目录
csv写入
import csv
# data = [
# ('tf', 20, 180),
# ('dl', 20, 170),
# ('hc', 18, 190)
# ]
# header = ('姓名','年龄','身高')
#
# # csv写入数据会默认写一行隔一行 newline=''就是让它不要有空行
# with open('text.csv','w',encoding='utf8',newline='') as f:
# writer = csv.writer(f)#创建一个写入器 作用是往f里面写入csv数据
# writer.writerow(header) # 写入一个元组 一个元素就是一行
# writer.writerows(data)#写入一个列表 一次写入多行 列表里面是一个一个元组
# 写入字典的数据 一定要带表头
header = ('姓名','年龄','身高')
# 字典中的键名 一定要和表头的名称相对应
data = [
{'姓名':'tf','年龄':20,'身高':180},
{'姓名':'dl','年龄':20,'身高':180},
{'姓名':'hc','年龄':18,'身高':180}
]
with open('text.csv','w',encoding='utf8',newline='') as f:
# 创建写入器时也要传入表头 因为字典是无序的 目的是让字典有约束 用来排序之类的
dictWriter = csv.DictWriter(f,header)
# 写入表头
dictWriter.writeheader()
dictWriter.writerows(data)
csv读取
import csv
with open('text.csv','r',encoding='utf8') as f:
# 创建读取器
# reader = csv.reader(f)
# # print(list(reader))
# for i in reader:
# print(i)
dictReader = csv.DictReader(f) #这种方式读取数据 必须有表头
for i in dictReader:
print(dict(i))