对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调用shell的方法
Nov 20 Python
在类Unix系统上开始Python3编程入门
Aug 20 Python
Pandas之drop_duplicates:去除重复项方法
Apr 18 Python
python+unittest+requests实现接口自动化的方法
Nov 29 Python
Python3非对称加密算法RSA实例详解
Dec 06 Python
Python使用dict.fromkeys()快速生成一个字典示例
Apr 24 Python
PyQt5 加载图片和文本文件的实例
Jun 14 Python
PyQt5响应回车事件的方法
Jun 25 Python
python模块和包的应用BASE_PATH使用解析
Dec 14 Python
pytorch中的上采样以及各种反操作,求逆操作详解
Jan 03 Python
几款好用的python工具库(小结)
Oct 20 Python
python删除csv文件的行列
Apr 06 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
关于使用coreseek并为其做分页的介绍
2013/06/21 PHP
CodeIgniter框架中_remap()使用方法2例
2014/03/10 PHP
解密ThinkPHP3.1.2版本之模板继承
2014/06/19 PHP
PHP计算加权平均数的方法
2015/07/16 PHP
php生成静态html页面的方法(2种方法)
2015/09/14 PHP
CI框架无限级分类+递归的实现代码
2016/11/01 PHP
详解PHP防止盗链防止迅雷下载的方法
2017/04/26 PHP
关于laravel 数据库迁移中integer类型是无法指定长度的问题
2019/10/09 PHP
js树形控件脚本代码
2008/07/24 Javascript
Tab页界面 用jQuery及Ajax技术实现(php后台)
2011/10/12 Javascript
JavaScript面向对象之Prototypes和继承
2012/07/12 Javascript
JavaScript中ES6字符串扩展方法
2016/08/26 Javascript
浅谈jquery高级方法描述与应用
2016/10/04 Javascript
Vue.js devtool插件安装后无法使用的解决办法
2017/11/27 Javascript
对vue里函数的调用顺序介绍
2018/03/17 Javascript
通过JavaScript下载文件到本地的方法(单文件)
2019/03/17 Javascript
Element实现表格嵌套、多个表格共用一个表头的方法
2020/05/09 Javascript
解决vue里a标签值解析变量,跳转页面,前面加默认域名端口的问题
2020/07/22 Javascript
js实现扫雷源代码
2020/11/27 Javascript
python数据库操作常用功能使用详解(创建表/插入数据/获取数据)
2013/12/06 Python
python开发之for循环操作实例详解
2015/11/12 Python
GitHub 热门:Python 算法大全,Star 超过 2 万
2019/04/29 Python
python顺序执行多个py文件的方法
2019/06/29 Python
使用CSS3的font-face字体嵌入样式的方法讲解
2016/05/13 HTML / CSS
NYX Professional Makeup俄罗斯官网:世界知名的化妆品品牌
2019/12/26 全球购物
医务人员竞聘职务自我评价分享
2013/11/08 职场文书
校园安全检查制度
2014/02/03 职场文书
巾帼建功标兵事迹材料
2014/05/11 职场文书
北京故宫导游词
2015/01/31 职场文书
仓库统计员岗位职责
2015/04/14 职场文书
2015社区六五普法工作总结
2015/04/21 职场文书
2015-2016年小学教导工作总结
2015/07/21 职场文书
蔬果开业典礼发言稿应该怎么写?
2019/09/03 职场文书
django如何自定义manage.py管理命令
2021/04/27 Python
springboot+VUE实现登录注册
2021/05/27 Vue.js
JS代码编译器Monaco使用方法
2021/06/11 Javascript