Python文件操作之合并文本文件内容示例代码


Posted in Python onSeptember 19, 2017

前言

相信大家初入某个项目,一般都要看代码。有时候,想把代码文件打印下来看,不过一般代码文件数量都在两位数或更多,逐一打开、打印,确实太耗费精力了,此外,也会出现某个代码文件打印到纸上只占了一两行的情况,很浪费纸。如果可以合并到一个文本文件里面上面这些问题就解决。

目前一个用的比较多的功能:将多个小文件的内容合并在一个统一的文件中,对原始文件重命名标记其已被处理过。
之前使用其他脚本写的,尝试用python写了一下,顺便熟悉一下python的文件处理命令。

原始文件

Python文件操作之合并文本文件内容示例代码

经过处理之后

Python文件操作之合并文本文件内容示例代码

最后还有一个蛋疼的因为缩进产生的第一个回车符

其中包含了文件的创建和移除,文件内容的读写,文件的重命名的语法命令等等

示例代码

# -*- coding: utf-8 -*-
import os
import time
import datetime

def merge_file(file_path,file_name):
 #file_path must exits
 if(os.path.exists(file_path) is False):
  print('file_path is not exists')
  return

 if(os.path.exists(os.path.join(file_path, file_name))):
  os.remove(os.path.join(file_path, file_name))

 #'%Y_%m_%d%H%M%S',创建一个以日期命名的文本文件
 targetfilename = str(time.strftime('%Y%m%d%H%M%S'))+'.txt'
 fobj = open(os.path.join(file_path, targetfilename), 'w')
 fobj.close()

 # a 是以追加的方式打开文件写入
 with open(os.path.join(file_path, targetfilename), 'a', encoding='GBK') as f_wirte:
  files = os.listdir(file_path)
  for file in files:
   print(os.path.join(file_path, file))
   with open(file_path+'\\'+file, 'r', encoding='GBK') as f:
    for line in f.readlines():
     if(line.strip().__len__()) > 0:# 排除空行
      f_wirte.write(line)
    f_wirte.write('\n')# 每读完一个文件之后,加一个回车,否则第一个文件的最后一行跟第二个文件的第一行没有回车

   # 文件合并之后,重命名原始的文件,
   # os.path.splitext(file)[0] 提取文件名,不包括后缀名
   # os.path.splitext(file)[1] 提取文件后缀名
   if (file != targetfilename):
    os.rename(os.path.join(file_path, file),os.path.join(file_path, os.path.splitext(file)[0] + '在_' +str(time.strftime('%Y%m%d%H%M%S')) +'_已处理' + '.txt'))


merge_file('D:\TestPythonMergeFile','auoto_create_a_category_file')

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python实现ftp客户端示例分享
Feb 17 Python
Linux下使用python调用top命令获得CPU利用率
Mar 10 Python
Python实现批量下载图片的方法
Jul 08 Python
Python中在for循环中嵌套使用if和else语句的技巧
Jun 20 Python
python append、extend与insert的区别
Oct 13 Python
Python实现处理逆波兰表达式示例
Jul 30 Python
[原创]Python入门教程1. 基本运算【四则运算、变量、math模块等】
Oct 28 Python
python按键按住不放持续响应的实例代码
Jul 17 Python
python对验证码降噪的实现示例代码
Nov 12 Python
在Python中使用filter去除列表中值为假及空字符串的例子
Nov 18 Python
解决python 执行shell命令无法获取返回值的问题
Dec 05 Python
Python基于Opencv识别两张相似图片
Apr 25 Python
使用Python & Flask 实现RESTful Web API的实例
Sep 19 #Python
python基本语法练习实例
Sep 19 #Python
基于python3 类的属性、方法、封装、继承实例讲解
Sep 19 #Python
浅谈python中列表、字符串、字典的常用操作
Sep 19 #Python
Python 文件操作的详解及实例
Sep 18 #Python
python Socket之客户端和服务端握手详解
Sep 18 #Python
Python基于time模块求程序运行时间的方法
Sep 18 #Python
You might like
PHP+MYSQL会员系统的登陆即权限判断实现代码
2011/09/23 PHP
phpword插件导出word文件时中文乱码问题处理方案
2014/08/19 PHP
php选择排序法实现数组排序实例分析
2015/02/16 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
2020/03/24 PHP
javascript 无提示关闭窗口脚本
2009/08/17 Javascript
为JavaScript提供睡眠功能(sleep) 自编译JS引擎
2010/08/16 Javascript
基于Jquery的动态添加控件并取值的实现代码
2010/09/24 Javascript
js实现上传图片之上传前预览图片
2013/03/25 Javascript
document.write()及其输出内容的样式、位置控制
2013/08/12 Javascript
JS Date函数整理方便使用
2013/10/23 Javascript
js实现日历可获得指定日期周数及星期几示例分享(js获取星期几)
2014/03/14 Javascript
javascript读写json示例
2014/04/11 Javascript
jQuery select表单提交省市区城市三级联动核心代码
2014/06/09 Javascript
JS实现超精简的链接列表在固定区域内滚动效果代码
2015/11/04 Javascript
多个js毫秒倒计时同时进行效果
2016/01/05 Javascript
Js实现中国公民身份证号码有效性验证实例代码
2017/05/03 Javascript
深究AngularJS——ng-checked(回写:带真实案例代码)
2017/06/13 Javascript
vue数据操作之点击事件实现num加减功能示例
2019/01/19 Javascript
浅谈一种让小程序支持JSX语法的新思路
2019/06/16 Javascript
使用typescript改造koa开发框架的实现
2020/02/04 Javascript
vue 解决uglifyjs-webpack-plugin打包出现报错的问题
2020/08/04 Javascript
Python实现字典(dict)的迭代操作示例
2018/06/05 Python
python实现求两个字符串的最长公共子串方法
2018/07/20 Python
Python with用法:自动关闭文件进程
2019/07/10 Python
基于 Django 的手机管理系统实现过程详解
2019/08/16 Python
Python标准库json模块和pickle模块使用详解
2020/03/10 Python
matplotlib设置颜色、标记、线条,让你的图像更加丰富(推荐)
2020/09/25 Python
10个很棒的 CSS3 开发工具 推荐
2011/05/16 HTML / CSS
英国在线定做百叶窗网站:Make My Blinds
2020/08/17 全球购物
转党组织关系介绍信
2014/01/08 职场文书
后备干部培训方案
2014/05/22 职场文书
医院护士工作检讨书
2014/10/26 职场文书
民主生活会主持词
2015/07/01 职场文书
六五普法心得体会2016
2016/01/21 职场文书
初二数学教学反思
2016/02/17 职场文书
Python装饰器的练习题
2021/11/23 Python