python用glob遍历文件_python中用glob快速获取文件列表
glob是python自帶的一個操作文件的相關(guān)模塊,由于模塊功能比較少,所以很容易掌握。用它可以查找符合特定規(guī)則的文件路徑名。使用該模塊查找文件,只需要用到: “*”, “?”, “[]”這三個匹配符;
”*”匹配0個或多個字符;
”?”匹配單個字符;
”[]”匹配指定范圍內(nèi)的字符,如:[0-9]匹配數(shù)字。
1、glob.glob:
python的glob模塊可以對文件夾下所有文件進行遍歷,并保存為一個list列表。返回所有匹配的文件路徑列表。它只有一個參數(shù)pathname,定義了文件路徑匹配規(guī)則,這里可以是絕對路徑,也可以是相對路徑。下面是使用glob.glob的例子:
for xmlPath in glob.glob('/data/imgs' +"/*"):#解釋:遍歷指定文件夾下所有文件或文件夾
for xmlPath in glob.glob(xmlPath + "/*/*"):#解釋:遍歷指定文件夾下的所有文件夾里的所有文件,/*/*可以根據(jù)文件夾層數(shù)自主設定
img_path= sorted(glob.glob(os.path.join(images, '*.npy')))#解釋:遍歷文件夾下所有npy文件
importglob#獲取指定目錄下的所有圖片
print glob.glob(r"/data/imgs/*/*.jpg")#獲取上級目錄的所有.py文件
print glob.glob(r'../*.py') #相對路徑
2、glob.iglob:
iglob與glob類似,只是這里返回值為迭代器,對于大量文件時更為省內(nèi)存。獲取一個可編歷對象,使用它可以逐個獲取匹配的文件路徑名。
與glob.glob()的區(qū)別是:glob.glob同時獲取所有的匹配路徑,而glob.iglob一次只獲取一個匹配路徑。這有點類似于.NET中操作數(shù)據(jù)庫用到的DataSet與DataReader。下面是一個簡單的例子:
importglob
f= glob.iglob(r'../*.py')for py inf:print py
總結(jié)
以上是生活随笔為你收集整理的python用glob遍历文件_python中用glob快速获取文件列表的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ie6和ie7同时安装在一台电脑上的方法
- 下一篇: 关于软件需求开发和项目的范围管理