python 合并文件的具体实例


Posted in Python onAugust 08, 2013

支持两种用法:
(1)合并某一文件夹下的所有文件(忽略文件夹等非文件条目)
(2)显示的合并多文件。

import sys
import os
'''
    usage(1): merge_files pathname
              pathname is directory and merge files in pathname directory
    usage(2): merge_files file1 file2 [file3[...]]
'''
FILE_SLIM = (256*(1024*1024)) #256M match 2**n
def merge_files(fileslist,mfname):
    global FILE_SLIM
    p_fp = open(mfname,"wba")
    for file in fileslist:
        with open(file,"rb") as c_fp:
            fsize = os.stat(file).st_size
            count = fsize&FILE_SLIM
            while count>0:
                p_fp.write(c_fp.read(FILE_SLIM))
                fsize -= FILE_SLIM
                count -= 1
            p_fp.write(c_fp.read())
    p_fp.close
def main():
    argc = len(sys.argv) - 1
    fileslist = []
    if argc == 2:
        dir_name = os.path.realpath(sys.argv[1])
        assert(os.path.isdir(dir_name))
        file_dir = os.listdir(dir_name)
        fileslist = [os.path.join(dir_name,file) for file in file_dir if os.path.isfile(os.path.join(dir_name,file))]
        print(fileslist)
    elif argc >=3:
        fileslist = [os.path.realpath(sys.argv[index]) for index in range(1,argc) if os.path.isfile(os.path.realpath(sys.argv[index]))]
    merge_files(fileslist,sys.argv[argc])
if __name__ == '__main__':
    main()
Python 相关文章推荐
详解Python中最难理解的点-装饰器
Apr 03 Python
windows下Python实现将pdf文件转化为png格式图片的方法
Jul 21 Python
python对视频画框标记后保存的方法
Dec 07 Python
浅析python参数的知识点
Dec 10 Python
python接口自动化(十六)--参数关联接口后传(详解)
Apr 16 Python
python with (as)语句实例详解
Feb 04 Python
PyQt5 控件字体样式等设置的实现
May 13 Python
django 利用Q对象与F对象进行查询的实现
May 15 Python
Tensorflow实现将标签变为one-hot形式
May 22 Python
基于Python快速处理PDF表格数据
Jun 03 Python
使用python爬取抖音app视频的实例代码
Dec 01 Python
python opencv通过按键采集图片源码
May 20 Python
python备份文件以及mysql数据库的脚本代码
Jun 10 #Python
Python 变量类型及命名规则介绍
Jun 08 #Python
Python 字符串操作实现代码(截取/替换/查找/分割)
Jun 08 #Python
python strip()函数 介绍
May 24 #Python
Python的词法分析与语法分析
May 18 #Python
简单文件操作python 修改文件指定行的方法
May 15 #Python
Python代理抓取并验证使用多线程实现
May 03 #Python
You might like
php下载excel无法打开的解决方法
2013/12/24 PHP
PHP也能干大事之PHP中的编码解码详解
2015/04/20 PHP
PHP中Array相关函数简介
2016/07/03 PHP
PHP学习笔记之session
2018/05/06 PHP
HTML-CSS群中单选引发的“事件”
2007/03/05 Javascript
jquery滚动组件(vticker.js)实现页面动态数据的滚动效果
2013/07/03 Javascript
JS禁用浏览器退格键实现思路及代码
2013/10/29 Javascript
javascript设计模式之解释器模式详解
2014/06/05 Javascript
JS防止网页被嵌入iframe框架的方法分析
2016/09/13 Javascript
jQuery的中 is(':visible') 解析及用法(必看)
2017/02/12 Javascript
js实现图片轮播效果学习笔记
2017/07/26 Javascript
Angular2的管道Pipe的使用方法
2017/11/07 Javascript
vue生命周期的探索
2019/04/03 Javascript
开源一个微信小程序仪表盘组件过程解析
2019/07/30 Javascript
详解JWT token心得与使用实例
2019/08/02 Javascript
JS数组的常用10种方法详解
2020/05/08 Javascript
解决VUE项目localhost端口服务器拒绝连接,只能用127.0.0.1的问题
2020/08/14 Javascript
React冒泡和阻止冒泡的应用详解
2020/08/18 Javascript
python实现模拟按键,自动翻页看u17漫画
2015/03/17 Python
Python实现设置windows桌面壁纸代码分享
2015/03/28 Python
Python中动态创建类实例的方法
2017/03/24 Python
Python 含参构造函数实例详解
2017/05/25 Python
基于MTCNN/TensorFlow实现人脸检测
2018/05/24 Python
对python3 中方法各种参数和返回值详解
2018/12/15 Python
详解Python二维数组与三维数组切片的方法
2019/07/18 Python
Python3开发环境搭建详细教程
2020/06/18 Python
CSS3中几个新增加的盒模型属性使用教程
2016/03/01 HTML / CSS
详解canvas绘制网络字体几种方法
2019/08/27 HTML / CSS
美国滑雪和滑雪板商店:Buckman
2018/03/03 全球购物
波兰灯具、照明和LED购物网站:Lampy.pl
2019/03/11 全球购物
90后毕业生的求职信范文
2013/09/21 职场文书
大学生学习自我评价
2014/01/13 职场文书
会计试用期自我评价怎么写
2014/09/18 职场文书
二婚主持词
2015/06/30 职场文书
2016年企业先进员工事迹材料
2016/02/25 职场文书
Python获取江苏疫情实时数据及爬虫分析
2021/08/02 Python