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

相关文章

PyTorch 对应点相乘、矩阵相乘实例

一,对应点相乘,x.mul(y) ,即点乘操作,点乘不求和操作,又可以叫作Hadamard product;点乘再求和,即为卷积 data = [[1,2], [3,4], [5,...

python ip正则式

ip正则式为:r'(([12][0-9][0-9]|[1-9][0-9]|[1-9])\.){3,3}([12][0-9][0-9]|[1-9][0-9]|[1-9])' 以下为一个示例...

通过Python 接口使用OpenCV的方法

一、在 Anaconda2 中配置 OpenCV 解压 opencv,添加系统环境变量,计算机-->右键属性-->高级系统设置-->环境变量-->系统变量--&g...

PyQt5实现拖放功能

PyQt5实现拖放功能

在这节教程中,我们将探讨PyQt5中的拖放操作。 在计算机图形用户界面(GUI)中,拖放是在某个虚拟对象上点击并拖动到另一个位置或虚拟对象上的操作。它通常用于调用多个动作,或为两个抽象对...

Python subprocess模块学习总结

一、subprocess以及常用的封装函数运行python的时候,我们都是在创建并运行一个进程。像Linux进程那样,一个进程可以fork一个子进程,并让这个子进程exec另外一个程序。...