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

如何快速对4万行CSV数据集分页?含Python3方案与工具推荐

CSV大数据集分页方案:工具推荐与Python实现

一、现成工具推荐

  • Pandas:Python生态中最常用的数据分析库,自带切片功能处理分页,应对4万行数据毫无压力。
  • CSVkit:专注CSV处理的命令行工具,支持按行范围提取数据,适合快速导出分页结果。
  • Excel/Numbers:若仅需可视化查看分页,直接用办公软件的「分页预览」功能,或手动筛选行范围导出即可。

二、Python3 实现代码示例

方法1:原生csv模块逐行读取分页

适合内存有限场景,无需一次性加载全量数据:

import csv

def get_csv_page(csv_file, page_num, page_size):
    start_row = (page_num - 1) * page_size
    end_row = start_row + page_size
    current_row = 0
    page_data = []
    
    with open(csv_file, 'r', encoding='utf-8') as f:
        reader = csv.reader(f)
        header = next(reader)  # 读取表头
        page_data.append(header)
        
        for row in reader:
            current_row += 1
            if start_row < current_row <= end_row:
                page_data.append(row)
            if current_row > end_row:
                break
    return page_data

# 调用示例:获取第2页,每页100条数据
page_2 = get_csv_page('your_data.csv', page_num=2, page_size=100)
for row in page_2:
    print(row)

方法2:Pandas快速分页

代码更简洁,适合内存充足的情况:

import pandas as pd

def pandas_csv_page(csv_file, page_num, page_size):
    skip_rows = (page_num - 1) * page_size
    # 读取指定范围的行
    df = pd.read_csv(csv_file, skiprows=skip_rows, nrows=page_size)
    # 补全表头(skiprows会跳过表头,需单独读取)
    header = pd.read_csv(csv_file, nrows=0).columns.tolist()
    df.columns = header
    return df.values.tolist()

# 调用示例
page_3 = pandas_csv_page('your_data.csv', page_num=3, page_size=200)

三、注意事项

  • 若仅需查看分页,用Pandas结合Jupyter Notebook的分页显示,或Excel分页视图更直观。
  • 处理超大CSV时,优先用原生csv模块逐行读取,避免内存溢出。
  • 分页参数注意:page_num从1开始计数,避免出现第0页的逻辑错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 19:15:35