CSV是以逗号间隔的文本文件,XLS是电子表格,包含文本、数值、公式和格式。当不需要公式和格式表格可用CSV格式保存。
引入
import csv
写入:
rows = [['张三',10],['李四',22],['王五',18]]
with open('test1.csv','w',newline='')as csv_file:
writer = csv.writer(csv_file)
for row in rows:
writer.writerow(row)
csv是一行一行写入的。
读取:
用f文件读取的话,格式是这样的:
with open('test.txt','r')as f:
用csv文件读取,可以和读取文件作比较:
with open('test1.csv','r')as read_file:
reader = csv.reader(read_file)
print(reader)
print([row for row in rows])
字典写入:
data_dic = [
{
'name':'zhangsan',
'age':'15'
},{
'name':'lisi',
'age':'25'
}
]
with open('dict.csv','w',newline='')as csv_file:
keys = []
for key in data_dic[0].keys():
print(key)
keys.append(key)
writer = csv.DictWriter(csv_file,fieldnames=keys)
writer.writeheader()
for dict in data_dic:
writer.writerow(dict)
读取
with open('test2.csv','r')as csv_file:
reader = csv.DictReader(csv_file)
print([row for row in reader])
输出结果为:
[OrderedDict([('张三', '李四'), ('10', '22')]), OrderedDict([('张三', '王五'), ('10', '18')])]