python使用glob檢索文件的操作
一、檢索當(dāng)前目錄下所有文件、文件夾
from glob import glob
glob('./*')
Output: ['./0a.wav', './aaa', './1b.wav', './1a.wav', './0b.wav'] #返回一個(gè)list
二、檢索當(dāng)前目錄下指定后綴名文件
假設(shè)我們需要獲取當(dāng)前文件夾下所有后綴名為".wav"的文件,
from glob import glob
glob('./*.wav')
Output: ['./0a.wav', './1b.wav', './1a.wav', './0b.wav'] #返回一個(gè)包含".wav"文件路徑的list
二、檢索當(dāng)前目錄下包含指定字符文件
假設(shè)我們需要獲得所有包含"a"字符的".wav"文件,
from glob import glob
glob('./*a*.wav')
Output: ['./0a.wav', './1a.wav'] #返回一個(gè)包含".wav"文件路徑的list
補(bǔ)充:Python 中的glob模塊使用筆記(用它來遍歷文件夾、文件真的很方便)
glob模塊簡(jiǎn)介
glob是python自己帶的一個(gè)文件操作相關(guān)模塊,用它可以查找符合自己目的的文件,就類似于Windows下的文件搜索,支持通配符操作。
glob中支持的通配符有三種:
‘*' 匹配0個(gè)或多個(gè)字符
‘?' 僅匹配一個(gè)字符
‘[]' 匹配指定范圍內(nèi)的字符,如[0-9]匹配數(shù)字
用圖片中的文件夾作為例子進(jìn)行演示

一、glob.glob的使用:
該方法返回所有匹配的文件路徑列表。
該方法需要一個(gè)參數(shù)用來指定要匹配的文件路徑(字符串類型)絕對(duì)路徑、相對(duì)路徑。
1.匹配某指定路徑下后綴為.exe的文件(絕對(duì)路徑)
In:
from glob import glob
file = glob(r'D:\masm\*.EXE')
print(type(file))
print(file)
Out:
<class 'list'>
['D:\\masm\\CREF.EXE', 'D:\\masm\\debug.exe',
'D:\\masm\\DEBUG32.EXE', 'D:\\masm\\ERROUT.EXE',
'D:\\masm\\EXEMOD.EXE', 'D:\\masm\\EXEPACK.EXE',
'D:\\masm\\LIB.EXE', 'D:\\masm\\LINK.EXE',
'D:\\masm\\MASM.EXE', 'D:\\masm\\SETENV.EXE',
'D:\\masm\\TEST2.EXE', 'D:\\masm\\TEST3.EXE',
'D:\\masm\\TEST4.EXE', 'D:\\masm\\TEST5.EXE',
'D:\\masm\\TEST6.EXE']
2.匹配某指定路徑下的所有文件(絕對(duì)路徑)
In: from glob import glob file = glob(r'D:\masm\*\*') print(type(file)) print(file) Out: <class 'list'> ['D:\\masm\\work\\hello.asm', 'D:\\masm\\work\\HELLO.OBJ', 'D:\\masm\\work\\test1.asm', 'D:\\masm\\work\\TEST1.OBJ', 'D:\\masm\\work\\test2.asm', 'D:\\masm\\work\\TEST2.OBJ', 'D:\\masm\\work\\test3.asm', 'D:\\masm\\work\\TEST3.OBJ', 'D:\\masm\\work\\test4.asm', 'D:\\masm\\work\\TEST4.OBJ', 'D:\\masm\\work\\two']
3.使用相對(duì)路徑來進(jìn)行匹配
'.' 指代當(dāng)前目錄
'. . ' 指代當(dāng)前目錄的上一級(jí)目錄
In: from glob import glob file = glob(r'..\*') print(type(file)) print(file) Out: <class 'list'> ['..\\12306', '..\\Auto connection school network', '..\\cache', '..\\class', '..\\exercise_1.py', '..\\exercise_2-2.py', '..\\exercise_2-3.py', '..\\exercise_2.py', '..\\regular', '..\\taobao', '..\\test.py', '..\\testglob', '..\\UDPClient']

二、glob.iglob的使用
獲取一個(gè)生成器( generator)對(duì)象,使用它可以逐個(gè)獲取匹配的文件路徑名。與glob.glob()的區(qū)別是:glob.glob同時(shí)獲取所有的匹配路徑,而 glob.iglob一次只獲取一個(gè)匹配路徑。
In:
from glob import iglob
file = iglob(r'..\*.py')
print(type(file))
print(file)
n=0
for i in file:
n=n+1
print(str(n),i)
Out:
<class 'generator'>
<generator object _iglob at 0x000001AEBE4D3B10>
1 ..\exercise_1.py
2 ..\exercise_2-2.py
3 ..\exercise_2-3.py
4 ..\exercise_2.py
5 ..\test.py
通過示例中的for循環(huán)可以看到,生成器對(duì)象會(huì)依次給出要匹配路徑下的文件。
相關(guān)文章
Python模擬鼠標(biāo)點(diǎn)擊實(shí)現(xiàn)方法(將通過實(shí)例自動(dòng)化模擬在360瀏覽器中自動(dòng)搜索python)
這篇文章主要介紹了Python模擬鼠標(biāo)點(diǎn)擊實(shí)現(xiàn)方法(將通過實(shí)例自動(dòng)化模擬在360瀏覽器中自動(dòng)搜索python),需要的朋友可以參考下2017-08-08
最新PyCharm 2021.3.1永久激活碼(親測(cè)有效)
今天又有朋友反應(yīng)PyCharm2021提示激活碼過期了,下面再為大家分享一個(gè)2022年01月08日更新PyCharm2021最新激活碼,需要的朋友可以參考下2020-11-11
Python實(shí)現(xiàn)數(shù)據(jù)地址實(shí)體抽取
大家好,本篇文章主要講的是Python實(shí)現(xiàn)數(shù)據(jù)地址實(shí)體抽取,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下2022-02-02
使用python調(diào)用zxing庫(kù)生成二維碼圖片詳解
本篇文章主要介紹了使用python調(diào)用zxing庫(kù)生成二維碼圖片,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-01-01
Python實(shí)現(xiàn)Wordcloud生成詞云圖的示例
這篇文章主要介紹了Python實(shí)現(xiàn)Wordcloud生成詞云圖的示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03
Python實(shí)戰(zhàn)使用Selenium爬取網(wǎng)頁(yè)數(shù)據(jù)
這篇文章主要為大家介紹了Python實(shí)戰(zhàn)使用Selenium爬取網(wǎng)頁(yè)數(shù)據(jù)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2023-05-05
Python從入門到精通之條件語(yǔ)句和循環(huán)結(jié)構(gòu)詳解
Python中提供了強(qiáng)大而靈活的條件語(yǔ)句和循環(huán)結(jié)構(gòu),本文將從入門到精通地介紹它們的使用方法,并通過相關(guān)代碼進(jìn)行講解,希望對(duì)大家深入了解Python有一定的幫助2023-07-07

