代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
Python
】
按1M大小将大文件分割存储
作者:
新玄
/ 发布于
2016/2/17
/
887
#!/usr/bin/env python3 import os,sys,time chunksize=int(1024*1024) j = '=' #对文件进行切割 def split(srcfile,todir,chunksize=chunksize): if not os.path.exists(todir): os.mkdir(todir) else: for fname in os.listdir(todir): os.remove(os.path.join(todir,fname)) partnum=0 fullsize=os.path.getsize(srcfile) #计算被切割文件的大小 filesize=0 f_input=open(srcfile,'rb') while True: filesize+=chunksize chunk=f_input.read(chunksize) #以chunksize大小从被切割文件中读取 if not chunk: print('分割完成') break partnum += 1 filename=os.path.join(todir,('part%04d' % partnum)) #标记块的编号 fileobj=open(filename,'wb') fileobj.write(chunk) fileobj.close() perbar(filesize,fullsize) f_input.close() assert partnum <= 9999 return partnum #计算当前切割进度 def perbar(filesize,fullsize): global j per=int((filesize/fullsize)*100) sys.stdout.write('正在分割:'+('%'+str(len(j))+'s'+'%'+str((138-len(j)))+'s') %(j,'['+str(per)+'%'+']')+'\r') sys.stdout.flush() time.sleep(0.1) j += '=' if __name__ == '__main__': if len(sys.argv) == 2 and sys.argv[1] == '-help': print('usage: split-file.py [file-to-spit target-dir [chunksize]]') else: if len(sys.argv) < 3: interactive=True srcfile=input('输入分割的文件?') todir=input('输入分割文件的存储目录?') else: interactive=False scrfile,todir=sys.argv[1:3] if len(sys.argv) == 4: chunksize=int(sys.argv[3]) absfrom,absto=map(os.path.abspath,[scrfile,todir]) print('Splitting',absfrom,'to',absto,'by',chunksize) try: parts=split(absfrom,absto,chunksize) except: print('分割期间发生错误:') print(sys.exc_info()[0],sys.exc_info()[1]) else: print('分割结果:',parts,'parts are in',absto) if interactive: input('请按enter键')
试试其它关键字
同语言下
.
比较两个图片的相似度
.
过urllib2获取带有中文参数的url内容
.
不下载获取远程图片的宽度和高度及文件大小
.
通过qrcode库生成二维码
.
通过httplib发送GET和POST请求
.
Django下解决小文件下载
.
遍历windows的所有窗口并输出窗口标题
.
根据窗口标题调用窗口
.
python 抓取搜狗指定公众号
.
pandas读取指定列
可能有用的
.
比较两个图片的相似度
.
过urllib2获取带有中文参数的url内容
.
不下载获取远程图片的宽度和高度及文件大小
.
通过qrcode库生成二维码
.
通过httplib发送GET和POST请求
.
Django下解决小文件下载
.
遍历windows的所有窗口并输出窗口标题
.
根据窗口标题调用窗口
.
python 抓取搜狗指定公众号
.
pandas读取指定列
新玄
贡献的其它代码
(
13
)
.
判读两个字符串是否存在交集(类似1,2,3字符串)
.
JS实现简单的缓慢动画
.
修改字段允许为空
.
阳历转农历
.
统计文本中某个字符串出现的次数
.
实现简单的 Ping 的功能,用于测试网络是否已经联通
.
Jquery-使元素居屏幕中间位置
.
jQuery小技巧-隐藏搜索文本框文字
.
调用系统里默认的邮件客户端
.
所在城市的简单注册
Copyright © 2004 - 2024 dezai.cn. All Rights Reserved
站长博客
粤ICP备13059550号-3