久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

手機站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時隨地免費學(xué)

千鋒教育

掃一掃進入千鋒手機站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時隨地免費學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > pythonpathlib模塊的用法有哪些?

pythonpathlib模塊的用法有哪些?

來源:千鋒教育
發(fā)布人:xqq
時間: 2023-11-13 13:34:27 1699853667

python中pathlib模塊的用法有哪些?

在這個世界上,人們每天都在用Python完成著不同的工作。而文件操作,則是大家最常需要解決的任務(wù)之一。使用Python,你可以輕松為他人生成精美的報表,也可以用短短幾行代碼快速解析、整理上萬份數(shù)據(jù)文件。本文向大家推薦一個被低估的Python標(biāo)準(zhǔn)庫模塊pathlib模塊。

一、pathlib模塊介紹

為了讓文件處理變得更簡單,Python在3.4版本引入了一個新的標(biāo)準(zhǔn)庫模塊:pathlib。

pathlib模塊基于面向?qū)ο笏枷朐O(shè)計,封裝了非常多與文件操作相關(guān)的功能。

如果使用它來改寫上面的代碼,結(jié)果會大不相同。

二、python中pathlib模塊的用法

1、使用pathlib模塊改寫代碼

原代碼:

importos.path

defunify_ext_with_os_path(path):

"""統(tǒng)一目錄下的.txt文件名后綴為.csv

"""

forfilenameinos.listdir(path):

basename,ext=os.path.splitext(filename)

ifext=='.txt':

abs_filepath=os.path.join(path,filename)

os.rename(abs_filepath,os.path.join(path,f'{basename}.csv'))

使用pathlib模塊后的代碼:

frompathlibimportPath

defunify_ext_with_pathlib(path):

forfpathinPath(path).glob('*.txt'):

fpath.rename(fpath.with_suffix('.csv'))

和舊代碼相比,新函數(shù)只需要兩行代碼就完成了工作。

2、使用/運算符來組合文件路徑

#舊朋友:使用os.path模塊

>>>importos.path

>>>os.path.join('/tmp','foo.txt')

'/tmp/foo.txt'

#新潮流:使用/運算符

>>>frompathlibimportPath

>>>Path('/tmp')/'foo.txt'

PosixPath('/tmp/foo.txt')

3、使用.read_text()來快速讀取文件內(nèi)容

#標(biāo)準(zhǔn)做法,使用withopen(...)打開文件

>>>withopen('foo.txt')asfile:

...print(file.read())

...

foo

#使用pathlib可以讓這件事情變得更簡單

>>>frompathlibimportPath

>>>print(Path('foo.txt').read_text())

foo

4、使用pathlib中Path對象與只接受字符串路徑的標(biāo)準(zhǔn)庫函數(shù)兼容使用

>>>p=Path('/tmp')

#可以直接對Path類型對象p進行join

>>>os.path.join(p,'foo.txt')

'/tmp/foo.txt'

以上就是pathlib模塊的用法還有很多,而且都很好用??煊闷饋戆蓗更多Python學(xué)習(xí)教程請關(guān)注IT培訓(xùn)機構(gòu):千鋒教育。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學(xué)習(xí)老師24小時內(nèi)將與您1V1溝通
免費領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT