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

 更新时间:2011年03月13日 13:14:54   作者:  
源代码目录一般很详细,每个代码文件都不长,一般只占几十行而已。在跟着书籍学习的过程中,可以打开源代码运行之后查看效果,或者适当修改看看变化,这都是很好的掌握技术的好办法。
但是,当一本书学过之后,对一般的技术和函数都有了印象,突然想要查找某个函数的实例代码时,却感到很困难,因为一本书的源代码目录很长,往往有几十甚至上百个源代码文件,想要找到自己想要的函数实例谈何容易?

  所以这里就是要将所有源代码按照目录和文件名作为标签,全部合并到一处,这样便于快速的搜索。查找,不是,那么查找下一个……于是很快便可以找到自己想要的实例,非常方便。当然,分开的源代码文件依然很有用,同样可以保留。合并之后的源代码文件并不大,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学习之可迭代对象、迭代器、生成器

    这篇文章主要介绍了python学习之可迭代对象、迭代器、生成器,需要的朋友可以参考下
    2021-04-04
  • python 爬取B站原视频的实例代码

    python 爬取B站原视频的实例代码

    这篇文章主要介绍了python 爬取B站原视频的实例代码,帮助大家更好的理解和使用python 爬虫,感兴趣的朋友可以了解下
    2020-09-09
  • python selenium UI自动化解决验证码的4种方法

    python selenium UI自动化解决验证码的4种方法

    本篇文章主要介绍了python selenium UI自动化解决验证码的4种方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • Python数据序列化之pickle模块

    Python数据序列化之pickle模块

    这篇文章主要介绍了Python数据序列化之pickle模块,pickle的本质是将Python数据还原为内存中的二进制数据,供用户转移、储存,更多详细内容,需要的小伙伴可以下面文章内容
    2022-03-03
  • np.random.choice()函数示例详解

    np.random.choice()函数示例详解

    np.random.choice() 是 NumPy 中的一个随机抽样函数,用于从给定的一维数组中随机抽取指定数量或指定概率的元素,本文给大家介绍np.random.choice()函数的相关知识,感兴趣的朋友一起看看吧
    2023-11-11
  • Python之OptionParser模块使用详解

    Python之OptionParser模块使用详解

    这篇文章主要为大家详细介绍了Python之OptionParser模块使用,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02
  • Python之关于类变量的两种赋值区别详解

    Python之关于类变量的两种赋值区别详解

    这篇文章主要介绍了Python之关于类变量的两种赋值区别详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • python 操作excel表格的方法

    python 操作excel表格的方法

    这篇文章主要介绍了python 操作excel表格的方法,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2020-12-12
  • 使用python制作一个为hex文件增加版本号的脚本实例

    使用python制作一个为hex文件增加版本号的脚本实例

    今天小编就为大家分享一篇使用python制作一个为hex文件增加版本号的脚本实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • Python Pandas pandas.read_sql_query函数实例用法分析

    Python Pandas pandas.read_sql_query函数实例用法分析

    在本篇文章里小编给大家整理的是一篇关于Python Pandas pandas.read_sql_query函数实例用法分析内容,有兴趣的朋友们可以跟着学习下。
    2021-06-06

最新评论