CSV有多少条记录,为什么不能只数文本行

一个CSV字段里可以包含带引号的换行,因此文件有多少物理行,不一定等于有多少条记录。统计与导入时应使用理解CSV规则的解析器。

浅色学习桌、笔记本与课程卡片
浅色主题概念配图,选自本站AI生成图库;非事件现场或产品实测截图。

先看字段引用规则

备注中包含换行、逗号或引号时,正确的CSV写法会对相应字段作引用或转义。直接splitlines再逐行处理,可能把同一条记录拆开,随后造成列数不一致或数据错位。

表头也不应算作普通记录

统计时先明确是否有表头,以及空记录怎样处理。下例在内存中读取一条带多行备注的记录;它只验证解析行为,不读写真实导出文件,也不涉及电子表格公式执行。

保存导出约定便于协作

把编码、分隔符、引用方式和表头说明一起交接。不同来源可能采用不同约定,不能根据扩展名就猜定。遇到导入失败时,先保留原文件,再用最小样例定位格式差异。

可以运行的练习

import csv
from io import StringIO
text = 'name,note\nA,"first line\nsecond line"\n'
records = list(csv.DictReader(StringIO(text)))
assert len(records) == 1
assert records[0]["note"] == "first line\nsecond line"
print("一条记录,备注包含换行")

示例已在本地隔离环境运行检查。使用固定输入,不访问外部接口,也不读取真实业务文件。

资料与继续学习

Python:CSV读取规则。资料查阅日期:2026年10月2日。步骤与练习由本站整理。

资料查阅与编辑日期:2026年10月2日。作者:玖柒。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享