对Python 文件夹遍历和文件查找的实例讲解


Posted in Python onApril 26, 2018

实例如下所示:

# -*- coding: utf-8 -*-
#to find where use the table on xxxxx xxxxxx  production env
'''
在项目中我们元数据管理的不是很好,如果先知道一张表在哪里用过,就需要写个程序去遍历下
'''
import os
import os.path
rootdir =  "C:\\Users\\IBM_ADMIN\\IBM\\rationalsdp\\workspace"#   # 指明被遍历的文件夹
query = "xxxxxxxxx"              
def walk_all_files(rootdir,query):
  for parent,dirnames,filenames in os.walk(rootdir):  #for循环自动完成递归枚举 #三个参数:分别返回1.父目录(当前路径) 2.所有文件夹名字(不含路径) 3.所有文件名字
    for dirname in dirnames:             #输出文件夹信息
      #print "parent is:" + parent
      #print "dirname is :" + dirname
      pass
    for filename in filenames:            #输出文件信息
      #print "parent is :" + parent
      #print "filename is:" + filename
      #print "the full name of the file is :" + os.path.join(parent,filename)
      is_file_contain_word(os.path.join(parent,filename),query)
def is_file_contain_word(file_,query_word):
  #print 1111111
  if query_word in open(file_).read() :
    print file_
    filecontext = open(file_).read()
    lines = filecontext.split('\n')         # python打印关键词所在行
    for line in lines:
      if query_word in line:
        print line
walk_all_files(rootdir,query)
print "done"
'''
http://www.iplaypy.com/jichu/note.html
please explain os.walk() :
walk()方法语法格式如下:
os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])
参数
  top -- 根目录下的每一个文件夹(包含它自己), 产生3-元组 (dirpath, dirnames, filenames)【文件夹路径, 文件夹名字, 文件名】。
  topdown --可选,为True或者没有指定, 一个目录的的3-元组将比它的任何子文件夹的3-元组先产生 (目录自上而下)。如果topdown为 False, 一个目录的3-元组将比它的任何子文件夹的3-元组后产生 (目录自下而上)。
  onerror -- 可选,是一个函数; 它调用时有一个参数, 一个OSError实例。报告这错误后,继续walk,或者抛出exception终止walk。
  followlinks -- 设置为 true,则通过软链接访问目录。
返回值
该方法没有返回值。
'''

以上这篇对Python 文件夹遍历和文件查找的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python抓取模板之家的CSS模板
Mar 16 Python
Python中有趣在__call__函数
Jun 21 Python
Django应用程序中如何发送电子邮件详解
Feb 04 Python
Python基于递归算法实现的汉诺塔与Fibonacci数列示例
Apr 18 Python
python3实现域名查询和whois查询功能
Jun 21 Python
Linux下Pycharm、Anaconda环境配置及使用踩坑
Dec 19 Python
Python多线程模块Threading用法示例小结
Nov 09 Python
对tensorflow中tf.nn.conv1d和layers.conv1d的区别详解
Feb 11 Python
使用 Python 在京东上抢口罩的思路详解
Feb 27 Python
TensorFlow Autodiff自动微分详解
Jul 06 Python
Python库安装速度过慢解决方案
Jul 14 Python
Pycharm安装Qt Design快捷工具的详细教程
Nov 18 Python
Python3.遍历某文件夹提取特定文件名的实例
Apr 26 #Python
Python实现按当前日期(年、月、日)创建多级目录的方法
Apr 26 #Python
python实现对指定输入的字符串逆序输出的6种方法
Apr 26 #Python
Python实现字符串的逆序 C++字符串逆序算法
May 28 #Python
Python实现合并同一个文件夹下所有txt文件的方法示例
Apr 26 #Python
TensorFlow损失函数专题详解
Apr 26 #Python
浅谈Tensorflow模型的保存与恢复加载
Apr 26 #Python
You might like
php 表单提交大量数据发生丢失的解决方法
2014/03/03 PHP
PHP实现阳历到农历转换的类实例
2015/03/07 PHP
php实现简单的上传进度条
2015/11/17 PHP
最新版本PHP 7 vs HHVM 多角度比较
2016/02/14 PHP
javascript编程起步(第一课)
2007/01/10 Javascript
仿163填写邮件地址自动显示下拉(无优化)
2008/11/05 Javascript
javascript中创建对象的三种常用方法
2010/12/30 Javascript
在JavaScript中实现类的方式探讨
2013/08/28 Javascript
js实现的点击数量加一可操作数据库
2014/05/09 Javascript
创建你的第一个AngularJS应用的方法
2015/06/16 Javascript
window.onerror()的用法与实例分析
2016/01/27 Javascript
谈一谈jQuery核心架构设计
2016/03/28 Javascript
webpack常用配置项配置文件介绍
2016/11/07 Javascript
AngularJS ng-template寄宿方式用法分析
2016/11/07 Javascript
Javascript 对cookie操作详解及实例
2016/12/29 Javascript
react中fetch之cors跨域请求的实现方法
2018/03/14 Javascript
layui table 参数设置方法
2018/08/14 Javascript
Vue 3.0中jsx语法的使用
2020/11/13 Javascript
在Python下尝试多线程编程
2015/04/28 Python
Python时间戳使用和相互转换详解
2017/12/11 Python
Python元组及文件核心对象类型详解
2018/02/11 Python
Python使用Selenium爬取淘宝异步加载的数据方法
2018/12/17 Python
pandas基于时间序列的固定时间间隔求均值的方法
2019/07/04 Python
python通过对字典的排序,对json字段进行排序的实例
2020/02/27 Python
django实现更改数据库某个字段以及字段段内数据
2020/03/31 Python
简单的命令查看安装的python版本号
2020/08/28 Python
python线程优先级队列知识点总结
2021/02/28 Python
python 递归相关知识总结
2021/03/03 Python
iframe与window.onload如何使用详解
2020/05/07 HTML / CSS
英国高档时尚男装购物网站:MR PORTER
2016/08/09 全球购物
高一英语教学反思
2014/01/22 职场文书
点菜员岗位职责范本
2014/02/14 职场文书
卫校毕业生个人自我鉴定
2014/04/28 职场文书
python+opencv实现视频抽帧示例代码
2021/06/11 Python
Spring-cloud Config Server的3种配置方式
2021/09/25 Java/Android
CSS巧用渐变实现高级感背景光动画
2021/12/06 HTML / CSS