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中处理字符串之endswith()方法的使用简介
May 18 Python
Python根据区号生成手机号码的方法
Jul 08 Python
Python的爬虫程序编写框架Scrapy入门学习教程
Jul 02 Python
Python3读取Excel数据存入MySQL的方法
May 04 Python
Python subprocess模块常见用法分析
Jun 12 Python
详解python里的命名规范
Jul 16 Python
Python算法的时间复杂度和空间复杂度(实例解析)
Nov 19 Python
Python基于execjs运行js过程解析
Nov 27 Python
Python爬虫入门教程02之笔趣阁小说爬取
Jan 24 Python
详解解决jupyter不能使用pytorch的问题
Feb 18 Python
tensorflow学习笔记之tfrecord文件的生成与读取
Mar 31 Python
python数据可视化JupyterLab实用扩展程序Mito
Nov 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
typecho插件编写教程(二):写一个新插件
2015/05/28 PHP
PHP面向对象程序设计之接口的继承定义与用法详解
2018/12/20 PHP
用js实现手把手教你月入万刀(转贴)
2007/11/07 Javascript
JQuery.uploadify 上传文件插件的使用详解 for ASP.NET
2010/01/22 Javascript
JavaScript实现点击按钮字体放大、缩小
2016/02/29 Javascript
原生js实现焦点轮播图效果
2017/01/12 Javascript
jquery 实现复选框的全选操作实例代码
2017/01/24 Javascript
vuejs2.0运用原生js实现简单的拖拽元素功能示例
2017/02/24 Javascript
jsonp跨域请求实现示例
2017/03/13 Javascript
随机生成10个不重复的0-100的数字(实例讲解)
2017/08/16 Javascript
vue组件初学_弹射小球(实例讲解)
2017/09/06 Javascript
Easy UI动态树点击文字实现展开关闭功能
2017/09/30 Javascript
Webpack 4.x搭建react开发环境的方法步骤
2018/08/15 Javascript
vue动画效果实现方法示例
2019/03/18 Javascript
vue element ui validate 主动触发错误提示操作
2020/09/21 Javascript
JavaScript中layim之整合右键菜单的示例代码
2021/02/06 Javascript
[08:53]DOTA2-DPC中国联赛 正赛 PSG.LGD vs LBZS 选手采访
2021/03/11 DOTA
跟老齐学Python之总结参数的传递
2014/10/10 Python
Python调用adb命令实现对多台设备同时进行reboot的方法
2018/10/15 Python
对python pandas读取剪贴板内容的方法详解
2019/01/24 Python
Pandas中DataFrame的分组/分割/合并的实现
2019/07/16 Python
在pycharm中为项目导入anacodna环境的操作方法
2020/02/12 Python
Python实现动态循环输出文字功能
2020/05/07 Python
Python虚拟环境库virtualenvwrapper安装及使用
2020/06/17 Python
Django中日期时间型字段进行年月日时分秒分组统计
2020/11/27 Python
html5自定义video标签的海报与播放按钮功能
2019/12/04 HTML / CSS
建筑工地门卫岗位职责
2014/04/30 职场文书
节约用水的口号
2014/06/20 职场文书
企业挂职心得体会
2014/09/10 职场文书
高等学院职业生涯规划书范文
2014/09/16 职场文书
推广普通话共筑中国梦演讲稿
2014/09/21 职场文书
公司员工宿舍管理制度
2015/08/03 职场文书
2016年第二十五次全国助残日活动总结
2016/04/01 职场文书
django如何自定义manage.py管理命令
2021/04/27 Python
解读MySQL的客户端和服务端协议
2021/05/10 MySQL
Nginx虚拟主机的搭建的实现步骤
2022/01/18 Servers