-
CSV文件简介
CSV(Comma-Separated Values),逗号分隔值 CSV是一个被行分隔符、列分隔符划分成行和列的文本文件.没有指定字符编码. 详情参看 RFC 4180 :https://www.ietf.org/html/rfc4180 行分隔符为\r\n,最后一行可以没有换行符 列分隔符常为逗号或制表符 每一行数据称为一条记录(record) 一行中被列分隔符分成的一个个独立数据,称为一个字段 字段可以使用双引号括起来,也可以不使用.(有些程序会自动帮你替换) 如果字段中出现了双引号、逗号、换行符必须使用双引号括起来. 如果字段的值是双引号,使用两个双引号表示一个转义.("""") 表头可选,和字段列对齐即可.
-
手动生成CSV文件
from pathlib import Path p = Path('G:/csv/a.csv') # CSV文件路径 parent = p.parent if not parent.exists(): # 判断目录是否存在 parent.mkdir(parents=True) # "\"反斜杠此处表示折行,这样保证第一行不为空行 csv_body = """\ id,name,age,comment 1,tom,18,"i'm 18" 2,jerry,"this is a ""test"" string." 3,sadan,"中国 国庆 " """ p.write_text(csv_body)
-
csv模块
两个函数:
reader(fileobj,dialect='excel',**fmtparams) 返回DictReader的实例,是个行迭代器 delimiter 列分隔符,缺省值为逗号 lineterminator 行分隔符,缺省值为\r\n quotechar 字段的引用符号,缺省为'"',双引号 双引号的处理: doublequote 双引号的处理,默认为True. 如果"和quotechar为同一个,True则使用2个双引号表示 False表示使用转义字符作为双引号的前缀.例:"\"" escapechar 设定转义字符,默认为None.默认转义符为"\" quoting 指定双引号的规则 QUOTE_ALL 所有字段都有加引号 QUOTE_MINIMAL 特殊字符字段才加引号 QUOTE_NONNUMERIC 非数字字段需要加引号 QUOTE_NONE 都不使用引号
print(line)
本文转自 撒旦搞时间 51CTO博客,原文链接:http://blog.51cto.com/12074120/1977604,如需转载请自行联系原作者