Python实现对文件夹内文本文件递归查找
2014-03-31 13:17
471 查看
平台:Win7 64 bit,IDLE Python 3.4.0
经常有这样的需求:在一个文本文件里查找特定字符串,这很好实现,用任何文本查看工具几乎都可以做到。而有的时候,想查找一个文件夹下的所有文本文件(特定后缀),我就遇到了这样的问题:想找到Blender的源代码中关于SPH的实现代码。于是写了下面的简单程序:
程序虽小,但很实用,运行结果如下:
参考文献:
官网,https://www.python.org/,文档,https://docs.python.org/3/(IDLE help);
Python绝对简明教程,http://wiki.woodpecker.org.cn/moin/PyAbsolutelyZipManual;
简明Python教程,http://woodpecker.org.cn/abyteofpython_cn/chinese/。
经常有这样的需求:在一个文本文件里查找特定字符串,这很好实现,用任何文本查看工具几乎都可以做到。而有的时候,想查找一个文件夹下的所有文本文件(特定后缀),我就遇到了这样的问题:想找到Blender的源代码中关于SPH的实现代码。于是写了下面的简单程序:
#!/usr/bin/env python3 import os def Search(rootDir, suffixes, arg): for lists in os.listdir(rootDir): path = os.path.join(rootDir, lists) if os.path.isfile(path): if path.endswith(suffixes): try: with open(path, encoding='utf_8') as fh: lineNum = 0 for line in fh: lineNum += 1 if arg in line: print(lineNum, ':', path, '\n', line) fh.close() except: print('error: ', path, '\n') if os.path.isdir(path): Search(path, suffixes, arg) Search(r'D:\blender-2.70', ('.c','.cpp','.h','.hpp'), 'SPH ')
程序虽小,但很实用,运行结果如下:
参考文献:
官网,https://www.python.org/,文档,https://docs.python.org/3/(IDLE help);
Python绝对简明教程,http://wiki.woodpecker.org.cn/moin/PyAbsolutelyZipManual;
简明Python教程,http://woodpecker.org.cn/abyteofpython_cn/chinese/。
相关文章推荐
- Python入门教程 超详细1小时学会Python
- 用Python和Pygame写游戏-从入门到精通(目录)
- Pygame 教程:《用 Python 和 Pygame 写游戏 - 从入门到精通》
- python
- Exercise 30: Else 和 If
- 30 个你可能不知道的 Python 语言特性和技巧
- python challenge_15
- windows安装python,pip
- 显示python库路径
- Python challenge_14
- Python yield 使用浅析
- 机器学习实战之决策树
- python yield send
- python idle 清屏问题的解决
- python中列表、元祖和字典的用法
- python 详解re模块
- python脚本
- 004_016 Python 通过字典分派方法和函数
- Python官方3.2文档教程--方法定义-默认参数值
- Python 书籍推荐