没有合适的资源?快使用搜索试试~ 我知道了~
很多时候我们会面临大文件无法加载到内存,或者要传输大文件的问题。这时候就需要考虑将大文件分割为小文件进行处理了。 下面是一种用python分割与合并分件的实现。 import os FILE_DIR = os.path.dirname(os.path.abspath(__file__)) #======================================================== # 文件操作 #======================================================== def get_filelist1(dir, postfi
资源推荐
资源详情
资源评论
python实现大文件分割与合并实现大文件分割与合并
很多时候我们会面临大文件无法加载到内存,或者要传输大文件的问题。这时候就需要考虑将大文件分割为小文件进行处理
了。
下面是一种用python分割与合并分件的实现。
import os
FILE_DIR = os.path.dirname(os.path.abspath(__file__))
#========================================================
# 文件操作
#========================================================
def get_filelist1(dir, postfix):
'''
按照后缀返回文件名列表
INPUT -> 目录地址, 文件后缀
OUTPUT -> 文件名列表
'''
return [os.path.join(dir, f) for f in os.listdir(dir) if f.endswith(postfix)]
def get_filelist2(dir, preffix):
'''
按照前缀返回文件名列表
INPUT -> 目录地址, 文件前缀
OUTPUT -> 文件名列表
'''
return [os.path.join(dir, f) for f in os.listdir(dir) if f.startswith(preffix)]
def get_file_postfix(filename):
'''
获取文件名后缀
INPUT -> 文件名
OUTPUT -> 文件后缀
'''
file = os.path.splitext(filename)
preffix, postfix = file
return postfix
def get_file_preffix(filename):
'''
获取文件名前缀
INPUT -> 文件名
OUTPUT -> 文件前缀
'''
file = os.path.splitext(filename)
preffix, postfix = file
return preffix
def file_chunkspilt(path, filename, chunksize):
'''
文件按照数据块大小分割为多个子文件
INPUT -> 文件目录, 文件名, 每个数据块大小
'''
if chunksize > 0:
filepath = path+'/'+filename
partnum = 0
inputfile = open(filepath, 'rb')
while True:
chunk = inputfile.read(chunksize)
if not chunk:
break
partnum += 1
newfilename = os.path.join(path, (filename+'_%04d' % partnum))
sub_file = open(newfilename, 'wb')
sub_file.write(chunk)
sub_file.close()
inputfile.close()
资源评论
weixin_38722464
- 粉丝: 4
- 资源: 939
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功