亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術(shù)文章
文章詳情頁

python os模塊和fnmatch模塊的使用介紹

瀏覽:3日期:2022-06-25 16:09:32
一、先介紹一下os模塊

import os print(os.getcwd())# E:pythontestpython_models# 獲取當(dāng)前的目錄 print(os.listdir('.'))# [’oop.py’, ’python_argparse.py’, ’python_click.py’, ’python_os.py’, ’python_re.py’, ’python_requests.py’, ’xx.py’, ’__init__.py’]# 列出指定目錄下的所有文件和文件夾,返回的是一個(gè)列表1、拆分路徑的方法介紹

# 1、拆分路徑的方法介紹# os.path模塊用來對(duì)文件和路徑進(jìn)程管理,顯示他包含很多拆分路徑的函數(shù),os.path模塊中和拆分路徑相關(guān)的函數(shù)有 # os.path.split() 返回一個(gè)二元組,包含文件的路徑和文件名# os.path.dirname() 返回文件的路徑# os.path.basename() 返回文件的文件名# os.path.splitext() 返回一個(gè)不包括文件擴(kuò)展名的部分和文件擴(kuò)展名的二元組 # 下面演示一下上面介紹的方法path = 'G:新建文件夾瘋狂永久地址.txt' print(os.path.split(path))# (’G:新建文件夾瘋狂’, ’永久地址.txt’) print(os.path.dirname(path))# G:新建文件夾瘋狂 print(os.path.basename(path)) print(os.path.splitext(path))# (’G:新建文件夾瘋狂永久地址’, ’.txt’)2、構(gòu)建文件路徑的方法介紹

# 2、構(gòu)建路徑的方法介紹# python工程師可以使用os.path模塊方便的拆分路徑,相應(yīng)的,os.path模塊的也包含了用以構(gòu)建路徑的函數(shù),其中最常用的是 # os.path.expanduser() 展開用戶的HOME目錄,比如~,~username# os.path.abspath() 得到文件或路徑的絕對(duì)路徑# os.path.join() 根據(jù)不同的操作系統(tǒng)平臺(tái),使用不用的路徑分隔符拼接路徑 # 下面演示一下上面介紹的方法# os.path.expanduser('~mysql') 返回mysql用戶的HOME目錄,我這里是windows平臺(tái),就不演示這個(gè)命令了 print(os.path.abspath('.'))# E:pythontestpython_models print(os.path.abspath('..'))# E:pythontest # 相應(yīng)的有一個(gè)方法可以判斷一個(gè)路徑是否為絕對(duì)路徑print(os.path.isabs('.'))# Falseprint(os.path.isabs(os.path.abspath('.')))# True print(os.path.join(os.path.abspath('.'),'test','join.text'))# E:pythontestpython_modelstestjoin.text # 在python代碼中,可使用__file__這個(gè)特殊的變量表示當(dāng)前代碼所在的源文件,在編寫代碼時(shí),有時(shí)候需要導(dǎo)入當(dāng)前源文件父目錄下的軟件包,因此需要用到# 這里的路徑函數(shù)獲取源文件的父目錄,如下所示path = os.path.abspath(__file__)print(path)# E:pythontestpython_modelspython_os.py print(os.path.dirname(path))# E:pythontestpython_models print(os.path.pardir)# .. print(os.path.abspath(os.path.join(os.path.dirname(path),os.path.pardir)))# E:pythontest3、獲取文件屬性的方法介紹

# 3、獲取文件屬性# os.path模塊也包含了若干函數(shù)用來獲取文件的屬性,包括文件的創(chuàng)建時(shí)間,修改時(shí)間,文件的大小,訪問時(shí)間# os.path.getatime()返回文件的訪問的時(shí)間# os.path.getmtime() 返回文件的修改的時(shí)間# os.path.getctime() 返回文件的創(chuàng)建時(shí)間# os.path.getsize() 返回文件的大小4、判斷文件的類型

# 4、判斷文件類型# os.path模塊也提供了若干函數(shù)用來判斷路徑是否存愛,以及路徑所指的文件的類型,這些判斷類的函數(shù)一般以is開頭,并且返回一個(gè)Boolean型的結(jié)果 # os.path.exists() 參數(shù)path指向的路徑是否存在# os.path.isfile()參數(shù)path指向的路徑存在,且為文件# os.path.isdir() 參數(shù)path指向的路徑存在,且為目錄# os.path.islink() 參數(shù)path指向的路徑存在,且是一個(gè)連接# os.path.ismount() 參數(shù)path指向的路徑存在,且是一個(gè)掛載點(diǎn)5、文件和目錄操作

# 5、文件和目錄的操作# os模塊保留文件和目錄的操作函數(shù),包括創(chuàng)建目錄,刪除目錄,刪除文件,重命名文件等# os.remove() 刪除path路徑所指向的文件# os.rmdir() 刪除path路徑鎖指向的文件夾,該文件夾必須為空,否則會(huì)報(bào)失敗# os.mkdir() 創(chuàng)建一個(gè)文件夾# os.rename()重命名一個(gè)文件或者文件夾6、修改文件屬性和判斷文件屬性

# 6、修改文件權(quán)限和判斷文件權(quán)限# os模塊也包含了修改文件權(quán)限,判斷文件權(quán)限的函數(shù),即chmod和access,chmod用來修改文件的權(quán)限,access用來判斷文件是否具有相應(yīng)的權(quán)限,在linux中,# 權(quán)限分為讀,寫和執(zhí)行,因此os模塊也提供了三個(gè)常量來表示讀,寫,執(zhí)行,即R_OK,W_OK,X_OK print(os.access(__file__,os.R_OK))# True print(os.access(__file__,os.W_OK))# Trueprint(os.access(__file__,os.X_OK))# True os.chmod(__file__,os.W_OK)7、遍歷目錄樹

# 7、os.walk遍歷目錄樹# 前面的例子都是查找某一個(gè)目錄下的文件并通過模式匹配去選擇自己需要的文件類型,在實(shí)際工作中,更有可能遇到的是查找某個(gè)目錄及其子目錄下的所有的文件# 。例如查找某個(gè)目錄及其子目錄下所有的圖片,查找某個(gè)目錄及其子目錄下最大的十個(gè)文件,對(duì)于這類的需求可以使用os模塊walk方法,walk方法遍歷某個(gè)目錄及其# 子目錄,對(duì)于每一個(gè)目錄,walk返回一個(gè)三元組,dirpath,dirnames,filenames,其中dirpath保存的是當(dāng)前的目錄,dirnames是當(dāng)前目錄下的子目錄列表,filenames# 是當(dāng)前目錄下的文件列表 for a,b,c in os.walk('..'): print(a,b,c,'walk---------') # a為當(dāng)前的目錄 # b為當(dāng)前目錄下目錄 # c為當(dāng)前目錄下的文件二、fnmatch模塊介紹

# 8、查找文件# 使用fnmatch來查找特定的文件,大部分情況下,使用字符串匹配查找特定的文件就能滿足需求,如果需要更加靈活的字符串匹配,可以使用標(biāo)準(zhǔn)庫中的fnmatch庫,這個(gè)庫# 專門用來進(jìn)行文件名匹配,支持使用通配符進(jìn)行文件名的匹配1、fnmatch支持的通配符如下

# fnmatch支持的通配符如下# * 匹配任何數(shù)量的字符# ? 匹配單個(gè)字符# [sep] 匹配sep中的字符# [!sep] 匹配除了sep以為的任何字符2、fnmatch的常用方法介紹

# fnmatch常用的方法# fnmatch.fnmatch() 判斷文件名是否符合特定的模式,區(qū)分大小寫# fnmatch.fnmatchcase() 判斷文件名是否符合特定的模塊,不區(qū)分大小寫# fnmatch.filter() 返回輸入列表中,符合特定模式的文件名列表# fnmatch.translate() 將通配符匹配模式轉(zhuǎn)換成正則表達(dá)式3、fnmatch.fnmatch方法介紹

for file in os.listdir('.'): if fnmatch.fnmatch(file,'*.html'):print(file) elif fnmatch.fnmatch(file,'[a-z]??.py'):print(file,'hahah') elif fnmatch.fnmatch(file,'[!a-o]*'):print(file) else:pass4、fnmatch.filter方法介紹

# filter方法和fnmatch一樣,只是filer需要傳遞一個(gè)文件的列表進(jìn)行,返回一個(gè)符合匹配規(guī)則的列表print(fnmatch.filter(os.listdir('.'),'*py'))

以上就是python os模塊和fnmatch模塊的使用介紹的詳細(xì)內(nèi)容,更多關(guān)于python os模塊和fnmatch模塊的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 在线观看亚洲成人 | 久久一日本道色综合久久 | 国内视频一区 | 欧美videos另类齐全 | 久久亚洲一级α片 | 一级成人毛片免费观看欧美 | 亚洲国产第一区二区香蕉 | 久久久久88色偷偷免费 | 国产下药迷倒白嫩丰满美女j8 | 亚洲成人自拍网 | 亚洲成人福利网站 | 特级毛片全部免费播放器 | 国产成人无精品久久久 | 男女牲高爱潮免费视频男女 | 国内精品久久久久久久影视麻豆 | 老司机午夜精品网站在线观看 | a男人的天堂久久a毛片 | 一区二区三区视频观看 | 欧美综合一区二区三区 | 成网站在线观看人免费 | 欧美成人做爰网站 | 五月天激激婷婷大综合蜜芽 | 免费韩国美女爽快一级毛片 | avtt加勒比手机版天堂网 | 免费aa在线观看 男人的天堂 | a毛片久久免费观看 | 99国产精品视频久久久久 | 亚洲第一视频在线播放 | 女bbbbxxxx毛片视频0 | v片免费看| 三级网站在线免费观看 | 午夜成人在线视频 | 国产三级久久 | 成人自拍视频网站 | 国产精品二 | 久久精品无遮挡一级毛片 | 国产欧美日韩在线观看一区二区三区 | 白浆在线视频 | 国产欧美日韩中文久久 | 美女张开大腿让男人桶 | 国产精品欧美一区二区在线看 |