from pathlib import path
目錄初始化
路徑拼接和分解
操作符 / :
分解:
獲取路徑
str() 獲取路徑字串
bytes() 獲取路徑字串的bytes
父目錄parent 目錄的邏輯父目錄
parents 父目錄序列, 可迭代物件, 索引0是直接的父
目錄組成部分
name、stem、sufx、sufxes、with_sufx(sufx)、with_name(name)
name目錄的最後乙個部分
suffix目錄中最後乙個部分的副檔名
stem目錄最後乙個部分,沒有字尾
name=stem+suffix
suffixes返回多個副檔名列表
with_suffix(suffix)有副檔名則替換,無則補充副檔名
with_name(name)替換目錄最後乙個部分並返回乙個新的路徑
全域性方法
cwd() 返回當前工作目錄
home() 返回當前家目錄
判斷方法
exists()目錄或檔案是否存在
is_dir()是否是目錄,目錄存在返回true
is_file()是否是普通檔案,檔案存在返回true
is_symlink()是否是軟鏈結
is_socket()是否是socket檔案
is_block_device()是否是塊裝置
is_char_device()是否是字元裝置
is_absolute()是否是絕對路徑
####### 絕對路徑
resolve()非windows,返回乙個新的路徑,這個新路徑就是當前path物件的絕對路徑,如果是軟鏈結則直接被解析。
absolute()獲取絕對路徑。
刪除空目錄
rmdir()刪除空目錄。沒有提供判斷目錄為空的方法
建立檔案
touch(mode=0o666,exist_ok=true)建立乙個檔案
as_uri()將路徑返回成uri,例如』file:///etc/passwd』
建立目錄
mkdir(mode=0o777,parents=false,exist_ok=false)
parents,是否建立父目錄,true等同於mkdir-p。false時,父目錄不存在,則丟擲filenotfounderror
exist_ok引數,在3.5版本加入。false時,路徑存在,丟擲fileexistserror;true時,fileexistserror被忽略
iterdir()迭代當前目錄,不遞迴
萬用字元glob(pattern)通配給定的模式
rglob(pattern)通配給定的模式,遞迴目錄
都返回乙個生成器
?代表乙個字元
*表示任意個字元
[abc]或[a-z]表示乙個字元
匹配match(pattern) 模式匹配, 成功返回true
stat() 相當於stat命令
lstat() 同stat(), 但如果是符號鏈結, 則顯示符號鏈結本身的檔案資訊
檔案操作
path.open(mode=『r』, buffering=-1, encoding=none, errors=none, newline=none)
使用方法類似內建函式open。返回乙個檔案物件
3.5增加的新函式
path.read_bytes()
以』rb』讀取路徑對應檔案,並返回二進位製流。
path.read_text(encoding=none, errors=none)
以』rt』方式讀取路徑對應檔案,返回文字。
path.write_bytes(data)
以』wb』方式寫入資料到路徑對應檔案。
path.write_text(data, encoding=none, errors=none)
以』wt』方式寫入字串到路徑對應檔案。
超好用python庫 Pathlib
pathlib有多好用?可能只能這樣解釋了 自從接觸了pathlib,之前用的os相關操作,基本上就不想再用了 笑哭 這裡先做部分總結,在之後的使用中會繼續更新 from pathlib import path p path windowspath p.resolve 文件顯示是absolute p...
python路徑庫pathlib應用
from pathlib import path from tkinter importw 常用p path util print type p p print type str p p print p.exists print p.is dir 路徑組合 p2 p actions.py print...
Python用pathlib庫操作路徑
在日常編碼中,常常會有這些操作 在當前目錄或使用者目錄下新建乙個配置檔案,獲取乙個檔案的路徑或上級目錄 這些都涉及路徑操作 相信大家都使用過os.path來處理過,這個痛苦我想 誰用誰知道吧 今天的主角pathlib就是來解決痛苦的 pathlib是跨平台的 物件導向的路徑操作庫,相對os.path...