首页 > 技术文章 > python模块---CSV

zoer 2020-07-15 23:48 原文

简介

  • 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)

推荐阅读