對(duì)python3中pathlib庫(kù)的Path類的使用詳解
用了很久的os.path,今天發(fā)現(xiàn)竟然還有這么好用的庫(kù),記錄下來以便使用。
1.調(diào)用庫(kù)
from pathlib import
2.創(chuàng)建Path對(duì)象
p = Path('D:/python/1.py')
print(p)
#可以這么使用,相當(dāng)于os.path.join()
p1 = Path('D:/python')
p2 = p1/'123'
print(p2)
結(jié)果
D:\python\1.py D:\python\123
3.Path.cwd()
獲取當(dāng)前路徑
path = Path.cwd() print(path)
結(jié)果:
D:\python
4.Path.stat()
獲取當(dāng)前文件的信息
p = Path('1.py')
print(p.stat())
結(jié)果
os.stat_result(st_mode=33206, st_ino=8444249301448143, st_dev=2561774433, st_nlink=1, st_uid=0, st_gid=0, st_size=4, st_atime=1525926554, st_mtime=1525926554, st_ctime=1525926554)
5.Path.exists()
判斷當(dāng)前路徑是否是文件或者文件夾
>>> Path('.').exists()
True
>>> Path('1.py').exists()
True
>>> Path('2.py').exists()
False
6.Path.glob(pattern)與Path.rglob(pattern)
Path.glob(pattern):獲取路徑下的所有符合pattern的文件,返回一個(gè)generator
目錄下的文件如下:

以下是獲取該目錄下所有py文件的路徑:
path=Path.cwd()
pys = path.glob('*.py')#pys是經(jīng)過yield產(chǎn)生的迭代器
for py in pys:
print(py)
結(jié)果:
C:\python\1.py C:\python\11.py C:\python\1111.py C:\python\11111.py
Path.rglob(pattern):與上面類似,只不過是返回路徑中所有子文件夾的符合pattern的文件。
7.Path.is_dir()與Path.is_file()
Path.is_dir()判斷該路徑是否是文件夾
Path.is_file()判斷該路徑是否是文件
print('p1:')
p1 = Path('D:/python')
print(p1.is_dir())
print(p1.is_file())
print('p2:')
p2 = Path('D:/python/1.py')
print(p2.is_dir())
print(p2.is_file())
#當(dāng)路徑不存在時(shí)也會(huì)返回Fasle
print('wrong path:')
print(Path('D:/NoneExistsPath').is_dir())
print(Path('D:/NoneExistsPath').is_file())
結(jié)果
p1: True False p2: False True wrong path: False False
8.Path.iterdir()
當(dāng)path為文件夾時(shí),通過yield產(chǎn)生path文件夾下的所有文件、文件夾路徑的迭代器
p = Path.cwd() for i in p.iterdir(): print(i)
結(jié)果
D:\python\1.py D:\python\11.py D:\python\1111.py D:\python\11111.py D:\python\dir
9.Path.mkdir(mode=0o777,parents=Fasle)
根據(jù)路徑創(chuàng)建文件夾
parents=True時(shí),會(huì)依次創(chuàng)建路徑中間缺少的文件夾
p_new = p/'new_dir' p_new.mkdir() p_news = p/'new_dirs/new_dir' p_news.mkdir(parents=True)
結(jié)果

10.Path.open(mode='r', buffering=-1, encoding=None, errors=None, newline=None)
類似于open()函數(shù)
11.Path.rename(target)
當(dāng)target是string時(shí),重命名文件或文件夾
當(dāng)target是Path時(shí),重命名并移動(dòng)文件或文件夾
p1 = Path('1.py')
p1.rename('new_name.py')
p2 = Path('11.py')
target = Path('new_dir/new_name.py')
p2.rename(target)
結(jié)果

12.Path.replace(target)
重命名當(dāng)前文件或文件夾,如果target所指示的文件或文件夾已存在,則覆蓋原文件
13.Path.parent(),Path.parents()
parent獲取path的上級(jí)路徑,parents獲取path的所有上級(jí)路徑
14.Path.is_absolute()
判斷path是否是絕對(duì)路徑
15.Path.match(pattern)
判斷path是否滿足pattern
16.Path.rmdir()
當(dāng)path為空文件夾的時(shí)候,刪除該文件夾
17.Path.name
獲取path文件名
18.Path.suffix
獲取path文件后綴
以上這篇對(duì)python3中pathlib庫(kù)的Path類的使用詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- python中pathlib模塊的基本用法與總結(jié)
- python3 pathlib庫(kù)Path類方法總結(jié)
- Python標(biāo)準(zhǔn)庫(kù)pathlib操作目錄和文件
- Python中的pathlib庫(kù)使用詳解
- 一文帶你掌握Python中pathlib模塊的用法
- Python pathlib模塊實(shí)例詳解
- python中pathlib 面向?qū)ο蟮奈募到y(tǒng)路徑
- Python文件系統(tǒng)模塊pathlib庫(kù)
- Python pathlib模塊使用方法及實(shí)例解析
- Python如何使用pathlib模塊處理文件路徑
- Python中pathlib庫(kù)的使用小結(jié)
相關(guān)文章
Python實(shí)現(xiàn)圖片和base64轉(zhuǎn)換詳解
這篇文章主要介紹了Python實(shí)現(xiàn)圖片和base64轉(zhuǎn)換詳解,Base64是一種二進(jìn)制到文本的編碼方式,如果要更具體一點(diǎn)的話,可以認(rèn)為它是一種將 byte數(shù)組編碼為字符串的方法,而且編碼出的字符串只包含ASCII基礎(chǔ)字符,需要的朋友可以參考下2024-01-01
詳解Python下Flask-ApScheduler快速指南
Flask是Python社區(qū)非常流行的一個(gè)Web開發(fā)框架,本文將嘗試將介紹APScheduler應(yīng)用于Flask之中,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2018-11-11
通過Python腳本批量復(fù)制并規(guī)范命名視頻文件
本文介紹了如何通過Python腳本批量復(fù)制并規(guī)范命名視頻文件,實(shí)現(xiàn)自動(dòng)補(bǔ)齊數(shù)字編號(hào)、保留原始文件、智能識(shí)別有效文件等功能,聽過代碼示例介紹的非常詳細(xì),需要的朋友可以參考下2025-03-03
Python實(shí)現(xiàn)快速計(jì)算24點(diǎn)游戲的示例代碼
這篇文章主要為大家詳細(xì)介紹了Python如何實(shí)現(xiàn)快速計(jì)算24點(diǎn)游戲并獲取表達(dá)式,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2022-12-12
python編程實(shí)現(xiàn)隨機(jī)生成多個(gè)橢圓實(shí)例代碼
這篇文章主要介紹了python編程實(shí)現(xiàn)隨機(jī)生成多個(gè)橢圓實(shí)例代碼,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01
PYQT5設(shè)置textEdit自動(dòng)滾屏的方法
今天小編就為大家分享一篇PYQT5設(shè)置textEdit自動(dòng)滾屏的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-06-06

