Python进阶(四十三)glob 文件路径查找

一、前言

globpython自己带的一个文件操作相关模块,内容也不多,是最简单的模块之一。用它可以查找符合特定规则的文件路径名。跟使用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)
for py in f:
    print (py)

四、os.chdir()

os.chdir() 方法用于改变当前工作目录到指定的路径。
语法
chdir()方法语法格式如下:
os.chdir(path)

参数
path – 要切换到的新路径。

返回值
如果允许访问返回 True , 否则返回False。

4.1 实例

以下实例演示了 chdir() 方法的使用:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
import os, sys
path = "/tmp"
# 查看当前工作目录
retval = os.getcwd()
print "当前工作目录为 %s" % retval
# 修改当前工作目录
os.chdir( path )
# 查看修改后的工作目录
retval = os.getcwd()
print "目录修改成功 %s" % retval

五、Python合并列表,append()、extend()、+、+=

在实际应用中涉及到了列表合并的问题。
在应用append()时,发现列表是以一个元素的形式追加到列表上的,最后查询后用的是extend()方法,区别如下:

  • append() 向列表尾部追加一个新元素,列表只占一个索引位,在原有列表上增加;
  • extend() 向列表尾部追加一个列表,将列表中的每个元素都追加进来,在原有列表上增加;

直接用+号看上去与用extend()一样的效果,但是实际上是生成了一个新的列表存这两个列表的和,只能用在两个列表相加上

  • += 效果与extend()一样,向原列表追加一个新元素,在原有列表上增加;

效果如下:

这里写图片描述

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

No Silver Bullet

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值