对python3中pathlib库的Path类的使用详解
原文連接? ?https://www.jb51.net/article/148789.htm
?
1.調用庫
?| 1 | from pathlib import |
2.創建Path對象
?| 1 2 3 4 5 6 7 | p = Path('D:/python/1.py') print(p) #可以這么使用,相當于os.path.join() p1 = Path('D:/python') p2 = p1/'123' print(p2) |
結果
?| 1 2 | D:\python\1.py D:\python\123 |
3.Path.cwd()
獲取當前路徑
?| 1 2 | path = Path.cwd() print(path) |
結果:
?| 1 | D:\python |
4.Path.stat()
獲取當前文件的信息
?| 1 2 | p = Path('1.py') print(p.stat()) |
結果
?| 1 | 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()
判斷當前路徑是否是文件或者文件夾
?| 1 2 3 4 5 6 | >>> Path('.').exists() True >>> Path('1.py').exists() True >>> Path('2.py').exists() False |
6.Path.glob(pattern)與Path.rglob(pattern)
Path.glob(pattern):獲取路徑下的所有符合pattern的文件,返回一個generator
目錄下的文件如下:
以下是獲取該目錄下所有py文件的路徑:
?| 1 2 3 4 | path=Path.cwd() pys = path.glob('*.py')#pys是經過yield產生的迭代器 for py in pys: ??print(py) |
結果:
?| 1 2 3 4 | 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()
?| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | 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()) #當路徑不存在時也會返回Fasle print('wrong path:') print(Path('D:/NoneExistsPath').is_dir()) print(Path('D:/NoneExistsPath').is_file()) |
結果
?| 1 2 3 4 5 6 7 8 9 | p1: True False p2: False True wrong path: False False |
8.Path.iterdir()
當path為文件夾時,通過yield產生path文件夾下的所有文件、文件夾路徑的迭代器
?| 1 2 3 | p = Path.cwd() for i in p.iterdir(): ??print(i) |
結果
?| 1 2 3 4 5 | 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)
根據路徑創建文件夾
parents=True時,會依次創建路徑中間缺少的文件夾
?| 1 2 3 4 5 | p_new = p/'new_dir' p_new.mkdir() p_news = p/'new_dirs/new_dir' p_news.mkdir(parents=True) |
結果
10.Path.open(mode='r', buffering=-1, encoding=None, errors=None, newline=None)
類似于open()函數
11.Path.rename(target)
當target是string時,重命名文件或文件夾
當target是Path時,重命名并移動文件或文件夾
?| 1 2 3 4 5 6 | p1 = Path('1.py') p1.rename('new_name.py') p2 = Path('11.py') target = Path('new_dir/new_name.py') p2.rename(target) |
結果
12.Path.replace(target)
重命名當前文件或文件夾,如果target所指示的文件或文件夾已存在,則覆蓋原文件
13.Path.parent(),Path.parents()
parent獲取path的上級路徑,parents獲取path的所有上級路徑
14.Path.is_absolute()
判斷path是否是絕對路徑
15.Path.match(pattern)
判斷path是否滿足pattern
16.Path.rmdir()
當path為空文件夾的時候,刪除該文件夾
17.Path.name
獲取path文件名
18.Path.suffix
獲取path文件后綴
以上這篇對python3中pathlib庫的Path類的使用詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
轉載于:https://www.cnblogs.com/qinhan/p/10102377.html
總結
以上是生活随笔為你收集整理的对python3中pathlib库的Path类的使用详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: spring boot整合spring
- 下一篇: 唯美个性签名女生古风