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编写简单的端口扫描器的实例分享
Dec 18 Python
pytorch + visdom 处理简单分类问题的示例
Jun 04 Python
python保存二维数组到txt文件中的方法
Nov 15 Python
解决Python一行输出不显示的问题
Dec 03 Python
Python检测数据类型的方法总结
May 20 Python
python常用函数与用法示例
Jul 02 Python
PIL图像处理模块paste方法简单使用详解
Jul 17 Python
python实现udp聊天窗口
Mar 31 Python
python 密码学示例——凯撒密码的实现
Sep 21 Python
Python pip 常用命令汇总
Oct 19 Python
python爬虫分布式获取数据的实例方法
Nov 26 Python
Python绘制数码晶体管日期
Feb 19 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+Html+缓存
2006/11/25 PHP
PHP编程函数安全篇
2013/01/08 PHP
YII中assets的使用示例
2014/07/31 PHP
php生成excel列名超过26列大于Z时的解决方法
2014/12/29 PHP
php通过Chianz.com获取IP地址与地区的方法
2015/01/14 PHP
使用Huagepage和PGO来提升PHP7的执行性能
2015/11/30 PHP
基于Laravel5.4实现多字段登录功能方法示例
2017/08/11 PHP
js 覆盖和重载 函数
2009/09/25 Javascript
jQuery源码分析-02正则表达式 RegExp 常用正则表达式
2011/11/14 Javascript
javascript window.confirm确认 取消对话框实现代码小结
2012/10/21 Javascript
浅谈JSON中stringify 函数、toJosn函数和parse函数
2015/01/26 Javascript
jQuery过滤选择器用法示例
2016/09/12 Javascript
AngularJS入门教程之多视图切换用法示例
2016/11/02 Javascript
Vue实现自带的过滤器实例
2017/03/09 Javascript
详解nodejs的express如何自动生成项目框架
2017/07/12 NodeJs
js推箱子小游戏步骤代码解析
2018/01/10 Javascript
微信小程序网络层封装的实现(promise, 登录锁)
2019/05/08 Javascript
js键盘事件实现人物的行走
2020/01/17 Javascript
快速解决element的autofocus失效问题
2020/09/08 Javascript
跟老齐学Python之有容乃大的list(2)
2014/09/15 Python
Python列表(list)常用操作方法小结
2015/02/02 Python
Python实现冒泡排序的简单应用示例
2017/12/11 Python
Python3开发环境搭建详细教程
2020/06/18 Python
Python中用xlwt制作表格实例讲解
2020/11/05 Python
使用 CSS3 中@media 实现网页自适应的示例代码
2020/03/24 HTML / CSS
基于html5 canvas做批改作业的小插件
2020/05/20 HTML / CSS
Tiqets荷兰:出售欧洲最美丽的景点和博物馆门票
2018/01/09 全球购物
快餐店的创业计划书范文
2014/01/29 职场文书
鼓励运动员的广播稿
2014/02/08 职场文书
中学生自我评价范文
2014/02/08 职场文书
战略合作意向书
2014/07/29 职场文书
研究生毕业论文导师评语
2014/12/31 职场文书
新闻稿怎么写
2015/07/18 职场文书
Nginx安装完成没有生成sbin目录的解决方法
2021/03/31 Servers
通过Python把学姐照片做成拼图游戏
2022/02/15 Python
蓝牙耳机怎么连接电脑win11? Win11蓝牙耳机连接电脑的技巧
2023/01/09 数码科技