Python path路徑相關處理

2021-08-19 07:27:48 字數 1579 閱讀 1376

3.4版本之前

os.path 模組

os.path.join('a','b','c') 返回乙個當前路徑下的a/b/c路徑字串,可根據環境系統自動更換/和\。

path.exists(p) 檢查p路徑是否真實存在

path.split(path.abspath(p)), 將p路徑切為父目錄和基目錄

path.dirname(p) 返回p的父目錄

path.basename(p) 返回p的基目錄

path.splitdrive(p) 返回路徑p的碟符名

3.4版本開始,建議使用pathlib模組,提供path物件來操作,包括目錄和檔案。

path() 當前目錄

path('a','b','c/d') 當前目錄的a/b/c/d

path('/a') 根下的a目錄

parts屬性,可以返回路徑中的每乙個部分.

joinpath(*others) 連線多個字串到path物件中。

parent 目錄的邏輯父目錄

parents 父目錄序列,索引0是直接的父目錄

name 目錄的最後乙個部分。返回字串。

suffix 目錄中最後乙個部分的副檔名。沒有副檔名的情況下返回空字串。帶圓點

suffixes 返回多個副檔名列表

stem 返回最後一部分不帶最後副檔名的字串。

with_suffix(suffix) 補充副檔名到路徑尾部,返回新的路徑,副檔名存在則無效。

with_name(name) 替換目錄最後乙個部分並返回乙個新的路徑。

pwd() 返回當前工作目錄。

home() 返回當前家目錄。

is_dir() 是否是目錄,返回bool

is_file() 受否是普通檔案。

is_syslink() 是否是軟連線。

is_socket() 是否是socket檔案。

is_block_device() 是否是塊裝置。

is_char_device() 是否是字元裝置。

is_absolute()檢查是否為絕對路徑。

resolve() 返回乙個新路徑,就是當前path物件的絕對路徑,如果是軟連線的直接解析。

exists() 目錄或檔案是否存在。

rmdir() 刪除空目錄,沒有提供

touch(mode = 0o666, exist_ok = true)

mkdir(mode = 0o777,parents = false , exist_ok = false) parents ,是否建立父目錄,等同於mkdir -p;false是,父目錄不存在,則丟擲filenotfouneerror錯誤。

exist_ok引數,false時,路徑存在,丟擲fileexisterror ;true時,異常被忽略。

iterdir() 迭代當前目錄。

glob(pattern) 通配給定的模式

rglob(pattern) 遞迴目錄通配給定的模式。 返回的是生成器。

match(pattern) 模式匹配,成功返回true。

stat() 相當於stat 命令

lstat() 如果是符號鏈結,則顯示符號鏈結本身的檔案資訊。

Unity相關路徑

在專案根目錄下讀取檔案,但移動端沒有訪問許可權。一般適用於pc端除錯用。resources.load string path 專案根目錄中建立resources資料夾來儲存檔案。看在unity資料時,如果是4.x,會有預設變數指向一些元件,如 righdbody,但在5.x中,元件語法規範化了,必須...

Servlet 路徑相關

web.xml 中 路徑,它叫 servlet 路徑 要到以 開頭,要到以 開頭 和包含路徑 請求 時的專案名前要加 例如,req.getrequestdispacher bservlet 以 開頭相對當前專案路徑 不以 開頭相對當前servlet路徑 重定向路徑 客戶端路徑 以 開頭,相對當前主機...

路徑相關API

需要標頭檔案 shlwapi.h 其中有一些函式功能存在重複,我在認為比較常用的的函式上加紅。bool pathfileexists lpctstr lpszpath 功能 檢查檔案 路徑是否存在 lptstr pathfindfilename lpctstr ppath 功能 獲得路徑中的檔名 例...