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程序设计有所帮助。

相关文章

用生成器来改写直接返回列表的函数方法

用生成器来改写直接返回列表的函数方法

本文是一篇关于《Effective Python》书中一节的学习笔记,记录了示例代码和思路。 如果函数要产生一系列结果,那么最简单的做法就是把这些结果都放在一个列表里返回。 比如我们要查...

Python-Flask:动态创建表的示例详解

今天小编从项目的实际出发,由于项目某一个表的数据达到好几十万条,此时数据的增删查改会很慢;为了增加提高访问的速度,我们引入动态创建表。 代码如下: from app_factory...

Python os.access()用法实例

概述 os.access() 方法使用当前的uid/gid尝试访问路径。大部分操作使用有效的 uid/gid, 因此运行环境可以在 suid/sgid 环境尝试。 语法 acces...

分享8点超级有用的Python编程建议(推荐)

分享8点超级有用的Python编程建议(推荐)

我们在用Python进行机器学习建模项目的时候,每个人都会有自己的一套项目文件管理的习惯,我自己也有一套方法,是自己曾经踩过的坑总结出来的,现在在这里分享一下给大家,希望多少有些地方可以...

Python实现的矩阵类实例

本文实例讲述了Python实现的矩阵类。分享给大家供大家参考,具体如下: 科学计算离不开矩阵的运算。当然,python已经有非常好的现成的库:numpy(numpy的简单安装与使用可参考...