Python实现的本地文件搜索功能示例【测试可用】

yipeiwu_com6年前Python基础

本文实例讲述了Python实现的本地文件搜索功能。分享给大家供大家参考,具体如下:

偶尔需要搜索指定文件,不想每次都在windows下面去搜索,想用代码来实现搜索,而且能够收集搜索结果,于是有了下面的代码。

# -*- coding:utf-8 -*-
#! python2
import os
def search_file(fileNmae, path):
  '''search a file in target directory
  :param fileNmae: file to be searched
  :param path: search scope
  :return:file list
  '''
  flag = False
  count = 0
  result_list = []
  if os.path.exists(path):
    for root, dirs, files in os.walk(path):
      for fn in files:
        Name = fn.decode('gbk')
        cu_path = root.encode('gbk')+"\\"+Name
        if Name.lower().find(fileNmae.lower()) != -1 and os.path.isfile(cu_path):
          print ":::Find it,file no", count+1, ":", cu_path
          flag = True
          count += 1
          result_list.append(cu_path)
    if flag is False:
      print ":::Not found the file:", fileNmae, "in path:", path
    else:
      print "======== Get[", count, "]files ========"
      return result_list
  else:
    print "!!-----path not existed:", path
#测试:
search_file("4.jpg", "C:\\img")

运行结果:

更多Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python考拉兹猜想输出序列代码实践

考拉兹猜想(英语:Collatz conjecture),是指对于每一个正整数,如果它是奇数,则对它乘3再加1,如果它是偶数,则对它除以2,如此循环,最终都能够得到1。(摘自Wiki)...

浅谈Django中view对数据库的调用方法

question: Django中对数据库的调用非常的隐蔽,在各种复杂的模块互相拼接继承中很难发现获取数据库内容的部分 来,开始试图理解一下下 首先,数据库中的表对应的是model中的...

Python3 把一个列表按指定数目分成多个列表的方式

如果我们需要将一个列表按指定数目分成多个列表:比如[1,2,3,4,5,6,7,8,9,10]分成[1,2,3][4,5,6][7,8,9][10],我们可以建立一个列表分割的函数spl...

Python中规范定义命名空间的一些建议

API的设计是一个艺术活。往往需要其简单、易懂、整洁、不累赘。 很多时候,我们在底层封装一个方法给高层用,而其它的方法只是为了辅助这个方法的。 也就是说我们只需要暴露这个方法就行,不用关...

python+flask实现API的方法

python+flask实现API的方法

本文为大家分享了python+flask实现API的具体方法,供大家参考,具体内容如下 Flask 框架 #-*-coding:utf-8-*- #pip install f...