如何对Python文件夹遍历和文件查找-创新互联

这篇文章将为大家详细讲解有关如何对Python文件夹遍历和文件查找,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

洱源网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联2013年开创至今到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联

实例如下所示:

# -*- 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文件夹遍历和文件查找”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享标题:如何对Python文件夹遍历和文件查找-创新互联
本文地址:http://pwwzsj.com/article/decshd.html