加载中…
个人资料
冬蔷薇园的习作本
冬蔷薇园的习作本
  • 博客等级:
  • 博客积分:0
  • 博客访问:22,528
  • 关注人气:1
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Python模糊查找指定文件

(2016-08-02 17:25:09)
标签:

it

这是一个查找指定文件的案例,
但是不是精确查找,
而是按照给出的路径,
进行模糊查找的案例,
所以从中了解到很多关于路径的内容。

代码


http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160802-1470129764993052131.jpg

新知识点


glob

glob是python自己带的一个文件操作相关模块,用它可以查找符合自己目的的文件,就类似于Windows下的文件搜索,支持通配符操作,*,?,[]这三个通配符,*代表0个或多个字符,?代表一个字符,[]匹配指定范围内的字符,如[0-9]匹配数字。

它的主要方法就是glob,该方法返回所有匹配的文件路径列表,该方法需要一个参数用来指定匹配的路径字符串(本字符串可以为绝对路径也可以为相对路径),其返回的文件名只包括当前目录里的文件名,不包括子文件夹里的文件。

比如:

glob.glob(r'c:\*.txt')

我这里就是获得C盘下的所有txt文件

glob.glob(r'E:\pic\*\*.jpg')

获得指定目录下的所有jpg文件

使用相对路径:

glob.glob(r'../*.py')


os.path

python中os.path常用模块

os.path.sep:路径分隔符

os.path.altsep: 根目录

os.path.curdir:当前目录

os.path.pardir:父目录

os.path.abspath(path):绝对路径

os.path.join():       常用来链接路径

os.path.split(path):      把path分为目录和文件两个部分,以列表返回


Sys.argv[]

这是用来获取命令行参数的,sys.argv[0]表示代码本身文件路径,所以参数从1开始,举个栗子:

import sys,os   

os.system(sys.argv[1])  

import sys,os

os.system(sys.argv[1])

这个例子os.system接收命令行参数,运行参数指令,保存为sample1.py,命令行带参数运行sample1.py notepad,将打开记事本程序。


yield

这是保存当前程序执行状态。

你用for循环的时候,每次取一个元素的时候就会计算一次。

用yield的函数叫generator,和iterator一样,它的好处是不用一次计算所有元素,而是用一次算一次,可以节省很多空间。generator每次计算需要上一次计算结果,所以用yield,否则一return,上次计算结果就没了。


当然,可能光看这些只字片言是没办法彻底了解的,
所以,还需要找到这些内容的书籍和详解,
接下来的几天,
我还要多做一些这方面的练习才好。



微信名:文科女生学编程

微信ID:GirlCoding

❶ 点击历史信息,查看更多内容
❷ 妹子学编程,懂猿类
❸ 长按右侧二维码,关注我

http://7xo6kd.com1.z0.glb.clouddn.com/upload-ueditor-image-20160802-1470129765245006947.jpg



0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有