简介
- CSV 是一个被行分隔符、列分隔符划分成行和列的纯文本文件
- CSV 不指定字符编码
- 字段可以用双引号引起,也可以不用;但是遇到字段中间有引号、逗号及转义字符时,一定要用双引号
- 表头可选,与字段对齐即可
- 行分割符为/r/n
- 列分割符为逗号,
- 在写入文件时默认以双引号为转义字符,如果需要更改转义字符,则doublequote=False,同时escapechar='指定字符'。
writer = csv.writer(f, doublequote=False, escapechar='@')
写入csv.writer(fileobj,dialect='execl',*args,**kwargs)
writer参数为一个可写入的文件对象,并返回一个Dictwriter实例,实例化出的对象有writerow与writerows
Dictwriter.writerow(iterable) 单行写入
Dictwriter.writerows(iterable) 多行迭代写入
在windows系统下打开文件对象时,需要指定newline为空,否则结束符被‘\n’转换
file = 'file1.csv'
with open(file,'w',encoding='utf-8',newline='') as f:
w_content = csv.writer(f)
w_content.writerow(['id','name',"age""s"])
w_content.writerows([(1,'tom',12),{2,'nani',13}])
读出文件csv.reader(iterable,dialect='execl')
csv.reader读一个可读的文件对象,返回一个行迭代器
with open(file,encoding='utf-8',newline='') as f:
r_content = csv.reader(f)
for i in r_content:
print(i)