按行数拆分CSV文件并保留头部
创始人
2024-08-22 06:00:55
0

下面是一个示例代码,可以按行数拆分CSV文件并保留头部:

import csv

def split_csv(input_file, output_path, rows_per_file):
    with open(input_file, 'r') as file:
        reader = csv.reader(file)
        header = next(reader)  # 读取头部

        file_index = 1
        row_count = 0
        output_file = None

        for row in reader:
            if output_file is None or row_count >= rows_per_file:
                if output_file is not None:
                    output_file.close()
                output_file = open(f'{output_path}/{file_index}.csv', 'w', newline='')
                writer = csv.writer(output_file)
                writer.writerow(header)  # 写入头部
                file_index += 1
                row_count = 0

            writer.writerow(row)
            row_count += 1

        if output_file is not None:
            output_file.close()

# 示例用法
split_csv('input.csv', 'output', 1000)

上述代码中,split_csv函数接受三个参数:输入文件路径、输出文件夹路径和每个输出文件的行数限制。函数使用CSV模块读取输入文件,并逐行处理。

在处理行数达到限制或需要新的输出文件时,函数会关闭当前的输出文件(如果有),并创建一个新的输出文件。在每个输出文件中,函数会先写入头部,然后逐行写入行数据。

在示例中,split_csv('input.csv', 'output', 1000)将会读取名为input.csv的输入文件,将其拆分成每个文件最多包含1000行的输出文件,并保存到名为output的文件夹中。

相关内容

热门资讯

分享实测!拱趴大菠萝万能挂图解... 分享实测!拱趴大菠萝万能挂图解(辅助挂)一直真的是有挂(发现有挂辅助攻略)一、游戏安装教程牌型概率发...
2024教程!poker辅助器... 2024教程!poker辅助器免费安装(辅助挂)其实真的有挂(有挂方法辅助技巧)1、让任何用户在无需...
玩家必看秘籍!aa poker... 玩家必看秘籍!aa poker辅助(辅助挂)切实是有挂(有挂猫腻辅助插件)1、该软件可以轻松地帮助玩...
免费测试版!竞技联盟辅助插件(... 免费测试版!竞技联盟辅助插件(辅助挂)好像是有挂(有挂总结辅助工具)1、辅助软件下载优化,底牌透视脚...
最新通报!wepoker底牌透... 最新通报!wepoker底牌透视(辅助挂)确实是有挂(有挂教学辅助方法)1、很好的工具软件,可以解锁...
一分钟快速了解!wepoker... 一分钟快速了解!wepoker透视有没有(辅助挂)切实真的有挂(有挂工具辅助教程)1、免费辅助多个强...
一分钟教会你!wepoker数... 一分钟教会你!wepoker数据分析(辅助挂)切实有挂(有挂工具辅助方法)1、完成有辅助插件,帮助玩...
玩家必备攻略!wepoker破... 玩家必备攻略!wepoker破解器有用吗(辅助挂)都是有挂(有挂解密辅助器)1、上手简单,内置详细流...
分享认知!hhpoker真的有... 分享认知!hhpoker真的有透视吗(辅助挂)其实有挂(新版有挂辅助工具)1、每一步都需要思考,不同...
揭秘攻略!智星德州插件最新版本... 揭秘攻略!智星德州插件最新版本更新内容详解(辅助挂)都是是有挂(详细教程辅助技巧)能透视中分为三种模...