无名商城论坛

搜索
查看: 277|回复: 0

[其他技术] 【HC】python大文件切割

[复制链接]

1万

主题

1万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
32464
发表于 2022-5-8 18:32:41 | 显示全部楼层 |阅读模式
"""
例如:一个1T文件,需要切割成10小文件,可采用均匀洒水方式进行切割.
完美运行!
"""
import os

source_file_path = r'bigfile.csv'
target_file_dir = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'splits')
target_file_count = 10
target_file_list = [open(target_file_dir + '/%s.csv' % x, 'a+', encoding='utf-8-sig') for x in range(target_file_count)]
# print(target_file_list)

with open(source_file_path, 'r', encoding='utf-8-sig') as source_file:  # 打开原始文件
    for index, source_file_line in enumerate(source_file):  # 读原始文件每一行
        target_file_index = index % 10  # 任何一个数 %10 产生 0-9的数,刚好为target_file_list下标
        target_file_list[target_file_index].write(source_file_line)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表