赞
踩
有时候,我们需要把一个大文件发送给别人,但是限于传输通道的限制,比如邮箱附件大小的限制,或者网络状况不太好,需要将大文件分割成小文件,分多次发送,接收端再对这些小文件进行合并。今天就来分享一下用 Python 分割合并大文件的方法。
思路及实现
如果是文本文件,可以按行数分割。无论是文本文件还是二进制文件,都可以按指定大小进行分割。
使用 Python 的文件读写功能就可以实现文件的分割与合并,设置每个文件的大小,然后读取指定大小的字节就写入一个新文件,接收端依次读取小文件,把读取到的字节按序写入一个文件,就可以完成合并。
分割
size = 1024 * 1000 * 10 # 10MB with open("bigfile", "rb") as reader: part = 1 while True: part_content = reader.read(size) if not part_content: print("split done.") break with open(f"bigfile_part{part}","wb") as writer: writer.write(part_content)
合并
total_parts = 5 with open("bigfile","wb") as writer: for i in range(5): with open(f"bigfile_part{i}", "rb") as reader: writer.write(reader
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。