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二叉树遍历的实现方法
Nov 21 Python
详解设计模式中的工厂方法模式在Python程序中的运用
Mar 02 Python
python实现对excel进行数据剔除操作实例
Dec 07 Python
python flask web服务实现更换默认端口和IP的方法
Jul 26 Python
python实现各种插值法(数值分析)
Jul 30 Python
python绘制BA无标度网络示例代码
Nov 21 Python
详解django中Template语言
Feb 22 Python
jupyter修改文件名方式(TensorFlow)
Apr 21 Python
Python3使用tesserocr识别字母数字验证码的实现
Jan 29 Python
浅谈python中的多态
Jun 15 Python
python 网络编程要点总结
Jun 18 Python
Python进程间的通信之语法学习
Apr 11 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调用Java对象的方法
2006/10/09 PHP
PHP优于Node.js的五大理由分享
2012/09/15 PHP
PHP读取文件内容后清空文件示例代码
2014/03/18 PHP
php+mysql大量用户登录解决方案分析
2014/12/29 PHP
PHP5.5.15+Apache2.4.10+MySQL5.6.20配置方法分享
2016/05/06 PHP
PHP链表操作简单示例
2016/10/15 PHP
PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)
2017/09/17 PHP
node.js中的fs.readdir方法使用说明
2014/12/17 Javascript
javascript内置对象操作详解
2015/02/04 Javascript
JavaScript 数组中最大最小值
2016/06/05 Javascript
jQuery实现的右下角广告窗体跟随效果示例
2016/09/16 Javascript
javascript实现图片左右滚动效果【可自动滚动,有左右按钮】
2016/09/19 Javascript
微信小程序实战之运维小项目
2017/01/17 Javascript
nodejs创建简易web服务器与文件读写的实例
2017/09/07 NodeJs
javascript计算渐变颜色的实例
2017/09/22 Javascript
JS基于递归实现网页版计算器的方法分析
2017/12/20 Javascript
json数据传到前台并解析展示成列表的方法
2018/08/06 Javascript
Vue瀑布流插件的使用示例
2018/09/19 Javascript
Vue通过配置WebSocket并实现群聊功能
2019/12/31 Javascript
小程序如何写动态标签的实现方法
2020/02/05 Javascript
Python中super关键字用法实例分析
2015/05/28 Python
Python 数据处理库 pandas 入门教程基本操作
2018/04/19 Python
python matplotlib画图库学习绘制常用的图
2019/03/19 Python
python实现Excel文件转换为TXT文件
2019/04/28 Python
Python Django切换MySQL数据库实例详解
2019/07/16 Python
python中几种自动微分库解析
2019/08/29 Python
python GUI库图形界面开发之PyQt5控件数据拖曳Drag与Drop详细使用方法与实例
2020/02/27 Python
用Python制作mini翻译器的实现示例
2020/08/17 Python
python如何使用腾讯云发送短信
2020/09/17 Python
周生生珠宝香港官网:Chow Sang Sang(香港及海外配送)
2019/09/05 全球购物
面向对象编程OOP的优点
2013/01/22 面试题
大学生求职推荐信
2013/11/27 职场文书
网管求职信
2014/03/03 职场文书
喜之郎果冻广告词
2014/03/20 职场文书
2015年重阳节主持词
2015/07/04 职场文书
MySQL之select、distinct、limit的使用
2021/11/11 MySQL