当前位置: 首页 > 编程笔记 >

python实现在目录中查找指定文件的方法

陆俭
2023-03-14
本文向大家介绍python实现在目录中查找指定文件的方法,包括了python实现在目录中查找指定文件的方法的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了python实现在目录中查找指定文件的方法。分享给大家供大家参考。具体实现方法如下:

1. 模糊查找

import os

from glob import glob #用到了这个模块

def search_file(pattern, search_path=os.environ['PATH'], pathsep=os.pathsep):

    for path in search_path.split(os.pathsep):

        for match in glob(os.path.join(path, pattern)):

            yield match

if __name__ == '__main__':

    import sys

    if len(sys.argv)<2  or sys.argv[1].startswith('-'):#sys.argv[0]是当前路径,1开始是后面的参数

        print 'Use: %s <pattern>' % sys.argv[0]

        sys.exit(1)

    if len(sys.argv)>2:

        matchs = list(search_file(sys.argv[1],sys.argv[2]))

    else:

        matchs = list(search_file(sys.argv[1]))

    print '%d match' % len(matchs)

    for match in matchs:

        print match

2. 指定的文件名精确查找
import os,optparse

#1:精确查找

def search_file(filename, search_path=os.environ['PATH'], pathsep=os.pathsep):#os.pathsep是分隔符';'

    for path in search_path.split(os.pathsep):

        candidate = os.path.join(path, filename)#预选路径

        if os.path.isfile(candidate):

            yield os.path.abspath(candidate) #用生成器可以方便控制返回的数据.可以使用.next()等方法只返回下一个子项

def parse_args():#帮助提示

    usage = u'''这是一个查找文件夹路径中是否有文件指定文件的脚本,

第一个参数是要找的文件名,第二个是路径'''

    parser = optparse.OptionParser(usage)

    help = u'要查找的文件名字'

    parser.add_option('--filename', help=help)#type='int',

    help = u'查找的路径多个路径以;分隔'

    parser.add_option('--path', help=help, default='e:')

    options, args = parser.parse_args()

    return options, args

if __name__ == '__main__':

    options, args = parse_args()

    find_file = list(search_file(args[0], args[1]))

    if find_file:

        for file in find_file:

            print "Found File at %s" % file

    else:

        print "Not Found"

 
例子:在e:/py和e:/phpwww目录下找以a到d开头的.php的文件
E:py>python_cook [a-d]*.php e:/py;e:/phpwww
2 match
e:/phpwwwcurl.php
e:/phpwwwduoxiancheng.php

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

 类似资料:
  • 本文向大家介绍python查找目录下指定扩展名的文件实例,包括了python查找目录下指定扩展名的文件实例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python查找目录下指定扩展名的文件。分享给大家供大家参考。具体如下: 这里使用python查找当前目录下的扩展名为.txt的文件 希望本文所述对大家的Python程序设计有所帮助。

  • 本文向大家介绍Python实现扫描指定目录下的子目录及文件的方法,包括了Python实现扫描指定目录下的子目录及文件的方法的使用技巧和注意事项,需要的朋友参考一下 本文介绍了使用Python来扫描指定目录下的文件,或者匹配指定后缀和前缀的函数。步骤如下: 如果要扫描指定目录下的文件,包括子目录,需要调用scan_files("/export/home/test/") 如果要扫描指定目录下的特定后缀

  • 本文向大家介绍Python3实现从指定路径查找文件的方法,包括了Python3实现从指定路径查找文件的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python3实现从指定路径查找文件的方法。分享给大家供大家参考。具体实现方法如下: 这里给定一个搜索路径,根据这个路径请求和请求的文件名,找到第一个符合要求的文件 希望本文所述对大家的Python3程序设计有所帮助。

  • 本文向大家介绍python列出目录下指定文件与子目录的方法,包括了python列出目录下指定文件与子目录的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python列出目录下指定文件与子目录的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的Python程序设计有所帮助。

  • 问题内容: 我正在尝试将一个自动化脚本输入到最近创建的文件夹中。 我下面有一些代码 我不确定如何从现在开始检查最新的时间戳。有任何想法吗? 谢谢 问题答案: 还有的“创建时间”在大多数OS /文件系统没有实际的跟踪:你得到的是一个文件或目录的时间 修改 (因此,例如创建一个目录中的文件更新该目录的修改时间) -和,如果提供,则表示最新的inode更改时间(因此将通过创建或删除子目录来更新)。 假设

  • 问题内容: 在Python中,我可以使用哪些命令来查找: 1.当前目录(运行Python脚本时我在终端中的位置) 2.我正在执行的文件在哪里? 问题答案: 要获取包含Python文件的目录的完整路径,请在该文件中写入以下内容: (请注意,如果你已经习惯于更改当前的工作目录,则上述方法将不起作用,因为常量的值是相对于当前的工作目录而言的,并且不会被调用更改。) 要获取当前的工作目录,请使用 上面使用