在Python中使用glob模块查找文件路径的方法

glob模块是最简单的模块之一,内容非常少。用它可以查找符合特定规则的文件路径名。跟使用windows下的文件搜索差不多。查找文件只用到三个匹配符:”*”, “?”, “[]“。”*”匹配0个或多个字符;”?”匹配单个字符;”[]“匹配指定范围内的字符,如:[0-9]匹配数字。
glob.glob

返回所有匹配的文件路径列表。它只有一个参数pathname,定义了文件路径匹配规则,这里可以是绝对路径,也可以是相对路径。下面是使用glob.glob的例子:

import glob

#获取指定目录下的所有图片
print glob.glob(r"E:/Picture/*/*.jpg")

#获取上级目录的所有.py文件
print glob.glob(r'../*.py')
#相对路径

glob.iglob

获取一个可编历对象,使用它可以逐个获取匹配的文件路径名。与glob.glob()的区别是:glob.glob同时获取所有的匹配路径,而glob.iglob一次只获取一个匹配路径。这有点类似于.NET中操作数据库用到的DataSet与DataReader。下面是一个简单的例子:

import glob

#父目录中的.py文件
f = glob.iglob(r'../*.py')

print f
#<generator object iglob at 0x00B9FF80>

for py in f:
  print py

It's so easy, is't it?

(0)

相关推荐

  • python中模块查找的原理与方法详解

    前言 本文主要给大家介绍了关于python模块查找的原理与方式,分享出来供大家参考学习,下面话不多说,来一起看看详细的介绍: 基础概念 module 模块, 一个 py 文件或以其他文件形式存在的可被导入的就是一个模块 package 包,包含有 __init__ 文件的文件夹 relative path 相对路径,相对于某个目录的路径 absolute path 绝对路径,全路径 路径查找 python 解释器查找被引入的包或模块 Python 解释器是如何查找包和模块的 Python 执行一

  • Python实现二分查找与bisect模块详解

    前言 其实Python 的列表(list)内部实现是一个数组,也就是一个线性表.在列表中查找元素可以使用 list.index() 方法,其时间复杂度为O(n) .对于大数据量,则可以用二分查找进行优化. 二分查找要求对象必须有序,其基本原理如下: 1.从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜素过程结束: 2.如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从中间元素开始比较. 3.如果在某一步骤数组为空,则代表找不到. 二分查找也

  • 简单掌握Python中glob模块查找文件路径的用法

    glob使用UNIX shell规则查找与一个模式匹配的文件名.只要程序需要查找文件系统中名字与某个模式匹配的一组文件,就可以使用这个模块. glob的模式规则与re模块使用的正则表达式不相同.glob模式遵循标准UNIX路径扩展规则.只是用几个特殊字符来实现两个不同的通配符和字符区间.模式规则要应用于文件名中的段.模式中的路径可以是相对路径或绝对路径. shell变量名和波浪线都不会扩展. 基本用法 1.glob.glob(pathname), 返回所有匹配的文件路径列表.它只有一个参数pat

  • Python引用模块和查找模块路径

    模块间相互独立相互引用是任何一种编程语言的基础能力.对于"模块"这个词在各种编程语言中或许是不同的,但我们可以简单认为一个程序文件是一个模块,文件里包含了类或者方法的定义.对于编译型的语言,比如C#中的一个.cs文件,Java中的一个.java或者编译后的.class文件可以认为是一个模块(但常常不表述为模块):对于解释型的语言会更加直观些,比如PHP的.php文件,在Python中就是.py文件可以认为是一个模块.在"模块"之上有"包",主要是

  • 在Python中使用glob模块查找文件路径的方法

    glob模块是最简单的模块之一,内容非常少.用它可以查找符合特定规则的文件路径名.跟使用windows下的文件搜索差不多.查找文件只用到三个匹配符:"*", "?", "[]"."*"匹配0个或多个字符:"?"匹配单个字符:"[]"匹配指定范围内的字符,如:[0-9]匹配数字. glob.glob 返回所有匹配的文件路径列表.它只有一个参数pathname,定义了文件路径匹配规则,这里可

  • 对python中xlsx,csv以及json文件的相互转化方法详解

    最近需要各种转格式,这里对相关代码作一个记录,方便日后查询. xlsx文件转csv文件 import xlrd import csv def xlsx_to_csv(): workbook = xlrd.open_workbook('1.xlsx') table = workbook.sheet_by_index(0) with codecs.open('1.csv', 'w', encoding='utf-8') as f: write = csv.writer(f) for row_num

  • python输出当前目录下index.html文件路径的方法

    本文实例讲述了python输出当前目录下index.html文件路径的方法.分享给大家供大家参考.具体实现方法如下: import os import sys path = os.path.join(os.path.dirname(sys.argv[0]),'index.html') print path 希望本文所述对大家的Python程序设计有所帮助.

  • Python中使用gzip模块压缩文件的简单教程

    压缩数据创建gzip文件 先看一个略麻烦的做法 import StringIO,gzip content = 'Life is short.I use python' zbuf = StringIO.StringIO() zfile = gzip.GzipFile(mode='wb', compresslevel=9, fileobj=zbuf) zfile.write(content) zfile.close() 但其实有个快捷的封装,不用用到StringIO模块 f = gzip.open(

  • python中利用h5py模块读取h5文件中的主键方法

    如下所示: import h5py import numpy as np #HDF5的写入: imgData = np.zeros((2,4)) f = h5py.File('HDF5_FILE.h5','w') #创建一个h5文件,文件指针是f f['data'] = imgData #将数据写入文件的主键data下面 f['labels'] = np.array([1,2,3,4,5]) #将数据写入文件的主键labels下面 f.close() #关闭文件 #HDF5的读取: f = h5

  • python中的bisect模块与二分查找详情

    目录 1.bisect模块概述 2.bisect模块的函数详解 2.1 bisect.bisect*()方法 2.2 bisect.insort*()方法 3.python中的二分查找 3.1 标准的二分查找 3.2 查找第一个>=target的元素索引 3.3 查找第一个>target的元素索引 4.二分查找的变形与 bisect 模块的关系 1.bisect模块概述 bisect是python的内置模块, 用于有序序列的插入和查找. 插入的数据不会影响列表的排序, 但是原有列表需要是有序的

  • Python寻找路径和查找文件路径的示例

    Sys.path 指定用于模块搜索路径的字符串列表 也可以通过sys模块的append方法在Python环境中增加搜索路径. Sys.path.append('/usr/bin/') /usr/lib64/python2.6 python模块默认存放路径 .pyc是一种二进制文件,是由py文件经过编译后生成的文件,加载的速度有所提高,且为加密文件,有利于保密. 1:简单安全的方法,是在sys.path的某个目录下添加路径配置文件,最常见的就是在-/site-package/目录下.路径配置文件的

  • Python中如何添加自定义模块

    一般来说,我们会将自己写的Python模块与python自带的模块分开存放以达到便于维护的目的.那么如何在Python中添加自定义的模块呢? 在解答这个问题之前,我们首先要明确两点: 1.严格区分包(package)和文件夹.包的定义就是包含__init__.py的文件夹.如果没有__init__.py,那么就是普通的文件夹. 2.模块导入写法,注意只要包路径,不要文件夹路径. Python 运行环境在查找库文件时是对 sys.path 列表进行遍历,如果我们想在运行环境中注册新的类库,主要有以

  • 解决python中os.system调用exe文件的问题

    前一段时间导师叫我写一个批处理的小程序,就是循环修改辐射传输模型软件MODTRAN的输入参数,然后运行MODTRAN软件进行计算,输出 需要的结果.我这里用的是python写的小程序,那就需要考虑用python调用MODTRAN的exe文件运行,查了一些资料可以用os.system命令来 执行exe文件,说起来直接调用就行了嘛,对吧,但是说起来简单,还是会遇到一些莫名其妙的问题,下面我来说说我遇到的问题. 先给大家介绍一下MODTRAN这个软件运行的一个过程. 这个软件里的东西如下图所示: 简单

随机推荐