You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无需Pandas,简化Python代码用csv模块打印大CSV前5行(含表头)

简化后的实现代码
import csv
import os

filename = "/Users/xx/Desktop/xx.csv"

# 检查文件是否存在,提升代码健壮性
if not os.path.isfile(filename):
    print(f"错误:文件 {filename} 不存在")
    exit(1)

with open(filename, 'r') as csvfile:
    csvreader = csv.reader(csvfile)
    # 获取表头(第一行)
    header = next(csvreader)
    # 收集前5行:表头 + 后续最多4行
    top_rows = [header]
    for _ in range(4):
        try:
            top_rows.append(next(csvreader))
        except StopIteration:
            # 文件行数不足5行时终止循环
            break

# 打印文件总行数
print(f"总行数:{csvreader.line_num}")

# 紧凑打印表头
print("表头:" + ", ".join(header))

# 紧凑打印前5行内容
print("\n前5行内容:")
for row in top_rows:
    print(", ".join(row))
核心优化说明
  • 内存友好:不再读取整个大型CSV文件到内存,仅按需读取前5行,避免内存占用过高。
  • 格式紧凑:用, .join(row)替代原固定宽度的格式化输出,消除不必要的空白,让内容更紧凑直观。
  • 代码简化:移除冗余的全局列表变量,逻辑更简洁直接;用f-string替代老旧的%格式化,可读性更强。
  • 健壮性提升:通过os.path.isfile检查文件存在性,同时处理文件行数不足5行的边界情况。

内容的提问来源于stack exchange,提问作者user16674853

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 11:05:31