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 Trie树实现字典排序
Mar 28 Python
Python实现发送email的几种常用方法
Aug 18 Python
Python中的类学习笔记
Sep 23 Python
Python打印scrapy蜘蛛抓取树结构的方法
Apr 08 Python
Python with用法实例
Apr 14 Python
python中 logging的使用详解
Oct 25 Python
python爬虫 使用真实浏览器打开网页的两种方法总结
Apr 21 Python
Python Django的安装配置教程图文详解
Jul 17 Python
python创建n行m列数组示例
Dec 02 Python
Matplotlib绘制雷达图和三维图的示例代码
Jan 07 Python
如何导出python安装的所有模块名称和版本号到文件中
Jun 05 Python
使用bandit对目标python代码进行安全函数扫描的案例分析
Jan 27 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数组中删除元素的实现代码
2012/06/22 PHP
对于PHP 5.4 你必须要知道的
2013/08/07 PHP
PHP获取MySql新增记录ID值的3种方法
2014/06/24 PHP
php采集中国代理服务器网的方法
2015/06/16 PHP
JavaScript中各种编码解码函数的区别和注意事项
2010/08/19 Javascript
html向js方法传递参数具体实现
2013/08/08 Javascript
浅析JavaScript中的typeof运算符
2013/11/30 Javascript
jQuery操作表格(table)的常用方法、技巧汇总
2014/04/12 Javascript
JavaScript中Number.MAX_VALUE属性的使用方法
2015/06/04 Javascript
详细探究ES6之Proxy代理
2016/07/22 Javascript
JavaScript数据操作_浅谈原始值和引用值的操作本质
2016/08/23 Javascript
Bootstrap基本插件学习笔记之Popover提示框(19)
2016/12/08 Javascript
Angular指令封装jQuery日期时间插件datetimepicker实现双向绑定示例
2017/01/22 Javascript
Map.vue基于百度地图组件重构笔记分享
2017/04/17 Javascript
JS实现新建文件夹功能
2017/06/17 Javascript
JavaScript实现二维坐标点排序效果
2017/07/18 Javascript
用JS编写一个函数,返回数组中重复出现过的元素(实例)
2017/09/14 Javascript
JS实现的简单折叠展开动画效果示例
2018/04/28 Javascript
js中offset,client , scroll 三大元素知识点总结
2019/09/11 Javascript
vue项目强制清除页面缓存的例子
2019/11/06 Javascript
通过js实现压缩图片上传功能
2020/02/25 Javascript
[09:13]2014DOTA2国际邀请赛 中国区预选赛coser表演
2014/05/23 DOTA
python uuid模块使用实例
2015/04/08 Python
使用Django的模版来配合字符串翻译工作
2015/07/27 Python
TensorFlow高效读取数据的方法示例
2018/02/06 Python
Python3.4学习笔记之列表、数组操作示例
2019/03/01 Python
python-序列解包(对可迭代元素的快速取值方法)
2019/08/24 Python
python实现简易学生信息管理系统
2020/04/05 Python
python绘制玫瑰的实现代码
2020/03/02 Python
Python pandas 列转行操作详解(类似hive中explode方法)
2020/05/18 Python
Python 微信公众号文章爬取的示例代码
2020/11/30 Python
历史系毕业生自荐信
2013/10/28 职场文书
2014学年自我鉴定
2014/02/23 职场文书
材料工程专业毕业生求职信
2014/03/04 职场文书
工地食品安全责任书
2015/05/09 职场文书
爱国教育主题班会
2015/08/14 职场文书