#encoding=utf8
#csv的使用
import csv
document = "sample.csv"
# 定义好头部
headers = ['class','name','sex','height','year']
#定义好每行的内容
rows = [
[1,'xiaoming','male',168,23],
[1,'xiaohong','female',162,22],
[2,'xiaozhang','female',163,21],
[2,'xiaoli','male',158,21]
]
#定义字典格式的内容
dic_rows = [
{'class':1,'name':'xiaozhao','sex':'male','height':168,'year':23},
{'class':1,'name':'xiaoxu','sex':'female','height':162,'year':22},
{'class':2,'name':'xiaolin','sex':'female','height':163,'year':21},
{'class':2,'name':'xiaoma','sex':'male','height':158,'year':21},
]
#csv写入默认会换行,加入newline解决换行问题
with open(document, 'w',newline='') as file:
writer = csv.writer(file)
writer.writerow(headers) #writerow写入一行 headers
writer.writerows(rows) #writerows写入多行
writer_dic = csv.DictWriter(file,headers)
#writer_dic.writeheader()
writer_dic.writerows(dic_rows) #字典序列的写入
#读取csv时需要使用reader
with open(document) as file:
r_csv =csv.reader(file)
print("全部输出")
for row in r_csv:
print(row)
#读取部分字段
with open(document) as file:
n_csv = csv.reader(file)
for n_row in n_csv:
print (n_row[1],":",n_row[4])
#说明,当执行程序的时候遇到PermissionError: [Errno 13] Permission denied:
#这个提示的时候,是因为文档打开的时候执行程序,关掉文档再执行就可以