CSV(逗号分隔值)是用纯文本保存表格数据的格式:每行一条记录,字段之间用逗号分隔。下面重点说明适用范围与限制。
CSV支持哪些内容
CSV 可以保存任何文本,包括中文、换行和逗号(需加引号),但不能保存数据类型、公式、颜色和图片。
示例
输入:a;b;c | 1;;3
写成 CSV结果:
a,b,c
1,,3
说明:按 RFC 4180:含逗号、引号、换行的字段用双引号包裹,内部引号写成两个。
Python 示例
下面是 Python 中处理CSV的常用写法:
import csv
with open("data.csv", newline="", encoding="utf-8-sig") as f:
for row in csv.DictReader(f):
print(row["姓名"])
with open("out.csv", "w", newline="", encoding="utf-8-sig") as f:
csv.writer(f).writerows([["名称", "备注"], ["A", '他说"好"']])运行前确认输入的字符集(推荐 UTF-8),并用几组已知样例核对结果。
中文的处理
中文 CSV 建议使用 UTF-8;要让中文 Windows 版 Excel 直接双击打开不乱码,需要保存为带 BOM 的 UTF-8(Python encoding="utf-8-sig")。
常见问题
【为什么 000123 变成了 123?】Excel 自动当作数字处理,导入时把该列设为“文本”。
【CSV 和 TSV 有什么区别?】TSV 用制表符分隔,字段里很少出现制表符,解析更简单。
【CSV 能保存多个工作表吗?】不能,一个 CSV 文件只对应一张表。
处理含个人信息的数据时,请注意保护隐私。
标签: 文本处理