glob模塊是Python標(biāo)準(zhǔn)庫中一個重要的模塊,主要用來查找符合特定規(guī)則的目錄和文件,并將搜索的到的結(jié)果返回到一個列表中。
glob模塊概述
?1、常用函數(shù)glob()
返回符合匹配條件的所有文件的路徑。
file_list = glob.glob(pathname=path, recursive=False)
?2、重要參數(shù)recursive
recursive參數(shù)代表是否遞歸調(diào)用,與特殊通配符**一同使用,默認(rèn)為False,F(xiàn)alse表示不遞歸調(diào)用,True表示遞歸調(diào)用。
3、四個通配符——【*,**,?,[]】
四個通配符的用法
*? ? ? ? 代表0個或多個字符。
例如:獲取文件夾目錄下的所有文件。
path = r'C:\Users\Administrator\Desktop\map\*'
file_list = glob.glob(path)
for file in file_list:
print(file)
# 結(jié)果
C:\Users\Administrator\Desktop\map\FME導(dǎo)出.gdb
C:\Users\Administrator\Desktop\map\next
C:\Users\Administrator\Desktop\map\晉安區(qū).dwg
C:\Users\Administrator\Desktop\map\晉安區(qū)2.dwg
C:\Users\Administrator\Desktop\map\(補(bǔ))任務(wù)下達(dá).xlsx
獲取文件夾目錄下的dwg文件。
path = r'C:\Users\Administrator\Desktop\map\*.dwg'
file_list = glob.glob(path)
for file in file_list:
print(file)
# 結(jié)果
C:\Users\Administrator\Desktop\map\晉安區(qū).dwg
C:\Users\Administrator\Desktop\map\晉安區(qū)2.dwg
**? ? ??匹配所有文件、目錄、子目錄和子目錄里的文件(recursive參數(shù)設(shè)為True)。
path = r'C:\Users\Administrator\Desktop\map\**'
file_list = glob.glob(path,recursive=True)
for file in file_list:
print(file)
# 結(jié)果
C:\Users\Administrator\Desktop\map\
C:\Users\Administrator\Desktop\map\FME導(dǎo)出.gdb
C:\Users\Administrator\Desktop\map\next
C:\Users\Administrator\Desktop\map\next\next2
C:\Users\Administrator\Desktop\map\next\next2\other.txt
C:\Users\Administrator\Desktop\map\next\晉安區(qū)new.dwg
C:\Users\Administrator\Desktop\map\晉安區(qū).dwg
C:\Users\Administrator\Desktop\map\晉安區(qū)2.dwg
C:\Users\Administrator\Desktop\map\(補(bǔ))任務(wù)下達(dá).xlsx
?? ? ?代表一個字符
path = r'C:\Users\Administrator\Desktop\map\晉安?.dwg'
file_list = glob.glob(path)
for file in file_list:
print(file)
# 結(jié)果
C:\Users\Administrator\Desktop\map\晉安區(qū).dwg
[]? ? ? ?匹配指定范圍內(nèi)的字符,如[0-9]匹配數(shù)字,[a-z]匹配小寫字母。
path = r'C:\Users\Administrator\Desktop\map\[a-z]*'
file_list = glob.glob(path)
for file in file_list:
print(file)
# 結(jié)果
C:\Users\Administrator\Desktop\map\FME導(dǎo)出.gdb
C:\Users\Administrator\Desktop\map\next
其它用法
查找本級所有的文件,用法類似os.listdir()。文章來源:http://www.zghlxwxcb.cn/news/detail-443656.html
path = r'..\*'
file_list = glob.glob(path)
for file in file_list:
print(file)
# 結(jié)果
.\0-基礎(chǔ)工具類
.\1-屬性表處理
.\2-要素處理
.\3-數(shù)據(jù)處理
.\test.py
查找上一級所有的文件文章來源地址http://www.zghlxwxcb.cn/news/detail-443656.html
path = r'..\*'
file_list = glob.glob(path)
for file in file_list:
print(file)
# 結(jié)果
..\0-GisPro工程
..\1-GisPro_pytool
..\2-工具文件
..\cc工具箱.tbx
..\cc工具箱使用文檔.indd
到了這里,關(guān)于Python小技巧【1】——獲取指定文件夾下的所有文件【glob模塊】的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!