python将多个文本文件合并为一个文本的代码(便于搜索)


Posted in Python onMarch 13, 2011

但是,当一本书学过之后,对一般的技术和函数都有了印象,突然想要查找某个函数的实例代码时,却感到很困难,因为一本书的源代码目录很长,往往有几十甚至上百个源代码文件,想要找到自己想要的函数实例谈何容易?

所以这里就是要将所有源代码按照目录和文件名作为标签,全部合并到一处,这样便于快速的搜索。查找,不是,那么查找下一个……于是很快便可以找到自己想要的实例,非常方便。当然,分开的源代码文件依然很有用,同样可以保留。合并之后的源代码文件并不大,n*100KB而已,打开和搜索都是很快速的。大家可以将同一种编程语言的所有实例通过这种方法全部合并为一个文件,搜索的效率就会大大提高。

注意:保存代码之后,将源文件复制到目录下,同一目录下的所有目录和其子目录都会被搜索;你可以加上后缀限定,只获取某种格式的文件的内容即可;源代码如下,请复制后保存:

# -*- coding: utf-8 -*- import os,sys 
info = os.getcwd() 
fout = open('note.tpy', 'w') # 合并内容到该文件 
def writeintofile(info): 
fin = open(info) 
strinfo = fin.read() 
# 利用##作为标签的点缀,你也可以使用其他的 
fout.write('\n##\n') 
fout.write('## '+info[-30:].encode('utf-8')) 
fout.write('\n##\n\n') 
fout.write(strinfo) 
fin.close() 

for root, dirs, files in os.walk(info): 
if len(dirs)==0: 
for fl in files: 
info = "%s\%s" % (root,fl) 
if info[-2:] == 'py': # 只将后缀名为py的文件内容合并 
writeintofile(info) 
fout.close()

如果你不想合并内容,只想获得一个文件名的清单文件,也可以。这里给你代码。例如,有的作者就会使用这个功能为自己生成一个源代码文件清单,很实用。

源代码为:

# -*- coding: utf-8 -*- 
''' 
本程序自动搜索指定的目录, 
打印所有文件的完整文件名到指定的文件中 
''' 
import os,sys 
export = "" 
i=1 
for root, dirs, files in os.walk(r'..'): 
#r'.'表示当前目录中的所有清单 
#..表示平行的其他目录,多出很多内容 
export += "--%s--\n%s\n\n%s\n\n" % (i,root,'\n'.join(files)) 
i=i+1 
fp = open('cdcfile-4.txt', 'w') 
fp.write(export) 
fp.close()
Python 相关文章推荐
python装饰器使用方法实例
Nov 21 Python
Python求两个list的差集、交集与并集的方法
Nov 01 Python
Python使用defaultdict读取文件各列的方法
May 11 Python
用Python进行简单图像识别(验证码)
Jan 19 Python
Pyinstaller将py打包成exe的实例
Mar 31 Python
在双python下设置python3为默认的方法
Oct 31 Python
Django的models模型的具体使用
Jul 15 Python
Django 重写用户模型的实现
Jul 29 Python
python输入错误后删除的方法
Oct 12 Python
Python笔记之观察者模式
Nov 20 Python
Django单元测试中Fixtures用法详解
Feb 25 Python
python识别围棋定位棋盘位置
Jul 26 Python
布同自制Python函数帮助查询小工具
Mar 13 #Python
Python中的文件和目录操作实现代码
Mar 13 #Python
python 中的列表解析和生成表达式
Mar 10 #Python
Python中使用中文的方法
Feb 19 #Python
python实现的防DDoS脚本
Feb 08 #Python
Python牛刀小试密码爆破
Feb 03 #Python
初学python数组的处理代码
Jan 04 #Python
You might like
php实现aes加密类分享
2014/02/16 PHP
PHP实现采集中国天气网未来7天天气
2014/10/15 PHP
php给一组指定关键词添加span标签的方法
2015/03/31 PHP
PHP实现腾讯与百度坐标转换
2017/08/05 PHP
php读取本地json文件的实例
2018/03/07 PHP
javascript-TreeView父子联动效果保持节点状态一致
2007/08/12 Javascript
Javascript 写的简单进度条控件
2008/01/22 Javascript
读jQuery之六 缓存数据功能介绍
2011/06/21 Javascript
JQuery给元素添加/删除节点比如select
2013/04/02 Javascript
转换字符串为json对象的方法详解
2013/11/29 Javascript
js函数在frame中的相互调用详解
2014/03/03 Javascript
JS时间特效最常用的三款
2015/08/19 Javascript
深入学习JavaScript的AngularJS框架中指令的使用方法
2016/03/05 Javascript
微信JS-SDK坐标位置如何转换为百度地图坐标
2016/07/04 Javascript
Bootstrap树形菜单插件TreeView.js使用方法详解
2016/11/01 Javascript
Angular 组件之间的交互的示例代码
2018/03/24 Javascript
JS表格的动态操作完整示例
2020/01/13 Javascript
Vue项目中数据的深度监听或对象属性的监听实例
2020/07/17 Javascript
Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)
2020/08/28 Javascript
Vue父子组件传值的一些坑
2020/09/16 Javascript
[02:39]DOTA2国际邀请赛助威团西雅图第一天
2013/08/08 DOTA
一些Python中的二维数组的操作方法
2015/05/02 Python
python利用datetime模块计算时间差
2015/08/04 Python
Python中scatter函数参数及用法详解
2017/11/08 Python
深入理解Python分布式爬虫原理
2017/11/23 Python
详解Django 中是否使用时区的区别
2018/06/14 Python
django admin.py 外键,反向查询的实例
2019/07/26 Python
Python 装饰器原理、定义与用法详解
2019/12/07 Python
python psutil监控进程实例
2019/12/17 Python
css3制作动态进度条以及附加jQuery百分比数字显示
2012/12/13 HTML / CSS
规划编制实施方案
2014/03/15 职场文书
领导班子四风表现材料
2014/08/23 职场文书
挂职锻炼个人总结
2015/03/05 职场文书
导游词之澳门玫瑰圣母堂
2019/12/03 职场文书
java项目构建Gradle的使用教程
2022/03/24 Java/Android
Java时间工具类Date的常用处理方法
2022/05/25 Java/Android