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中用sleep()方法操作时间的教程
May 22 Python
Python使用cookielib模块操作cookie的实例教程
Jul 12 Python
Ubuntu 下 vim 搭建python 环境 配置
Jun 12 Python
基于Python3 逗号代码 和 字符图网格(详谈)
Jun 22 Python
Pandas之drop_duplicates:去除重复项方法
Apr 18 Python
将TensorFlow的模型网络导出为单个文件的方法
Apr 23 Python
异步任务队列Celery在Django中的使用方法
Jun 07 Python
Python subprocess模块常见用法分析
Jun 12 Python
Python SVM(支持向量机)实现方法完整示例
Jun 19 Python
python numpy数组的索引和切片的操作方法
Oct 20 Python
python上传时包含boundary时的解决方法
Apr 08 Python
python3 logging日志封装实例
Apr 08 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遍历文件目录与清除目录中文件的实现详解
2013/06/24 PHP
php pki加密技术(openssl)详解
2013/07/01 PHP
PHP仿博客园 个人博客(2) 数据库增添改删
2013/07/05 PHP
php实现高效获取图片尺寸的方法
2014/12/12 PHP
用php实现分页效果的示例代码
2020/12/10 PHP
基于jQuery的Tab选项框效果代码(插件)
2011/03/01 Javascript
FF火狐下获取一个元素同类型的相邻元素实现代码
2012/12/15 Javascript
jquery通过select列表选择框对表格数据进行过滤示例
2014/05/07 Javascript
JS点击链接后慢慢展开隐藏着图片的方法
2015/02/17 Javascript
Javascript实现获取及设置光标位置的方法
2015/07/21 Javascript
jquery验证手机号是否正确实例讲解
2015/11/17 Javascript
jQuery的实例及必知重要的jQuery选择器详解
2016/05/20 Javascript
JavaScript对象数组排序实例方法浅析
2016/06/15 Javascript
JS实现iframe编辑器光标位置插入内容的方法(兼容IE和Firefox)
2016/06/24 Javascript
node.js版本管理工具n无效的原理和解决方法
2016/11/24 Javascript
清除浏览器缓存的几种方法总结(必看)
2016/12/09 Javascript
JavaScript实现简单的双色球(实例讲解)
2017/07/31 Javascript
详解element-ui中表单验证的三种方式
2019/09/18 Javascript
Django框架中处理URLconf中特定的URL的方法
2015/07/20 Python
详解Django+Uwsgi+Nginx 实现生产环境部署
2018/11/06 Python
Python学习笔记之图片人脸检测识别实例教程
2019/03/06 Python
用pycharm开发django项目示例代码
2019/06/13 Python
在Python中画图(基于Jupyter notebook的魔法函数)
2019/10/28 Python
10个Python面试常问的问题(小结)
2019/11/20 Python
Pytorch根据layers的name冻结训练方式
2020/01/06 Python
pytorch 实现张量tensor,图片,CPU,GPU,数组等的转换
2020/01/13 Python
使用tensorflow实现矩阵分解方式
2020/02/07 Python
python实现图像拼接功能
2020/03/23 Python
新手学python应该下哪个版本
2020/06/11 Python
HTML5边玩边学(3)像素和颜色
2010/09/21 HTML / CSS
设计师珠宝:Ylang 23
2018/05/11 全球购物
英国护发和美妆在线商店:Klip Shop
2019/03/24 全球购物
解除劳动合同协议书
2014/04/14 职场文书
如何写早恋检讨书
2014/09/10 职场文书
2014年幼儿园后勤工作总结
2014/11/10 职场文书
篮球赛新闻稿
2015/07/17 职场文书