Python 中的 OS Path 模組


os.path 模組是一個非常廣泛使用的模組,在處理系統中不同位置的檔案時非常方便。它用於不同的目的,例如在 python 中合併、規範化和檢索路徑名。所有這些函式都只接受位元組或字串物件作為其引數。其結果特定於其執行的作業系統。

os.path.basename

此函式提供路徑的最後一部分,可以是資料夾或檔名。請注意 Windows 和 Linux 中路徑表示方式的區別,體現在反斜槓和正斜槓的使用上。

示例

import os
# In windows
fldr = os.path.basename("C:\Users\xyz\Documents\My Web Sites")
print(fldr)
file = os.path.basename("C:\Users\xyz\Documents\My Web Sites\intro.html")
print(file)
# In nix*
fldr = os.path.basename("/Documents/MyWebSites")
print(fldr)
file = os.path.basename("/Documents/MyWebSites/music.txt")
print(file)

執行上述程式碼得到以下結果:

輸出

My Web Sites
intro.html
MyWebSites
music.txt

os.path.dirname

此函式提供資料夾或檔案所在的目錄名。

示例

import os
# In windows
DIR = os.path.dirname("C:\Users\xyz\Documents\My Web Sites")
print(DIR)
# In nix*
DIR = os.path.dirname("/Documents/MyWebSites")
print(DIR)

執行上述程式碼得到以下結果:

輸出

C:\Users\xyz\Documents
/Documents

os.path.isfile

有時我們需要檢查給定的完整路徑是表示資料夾還是檔案。如果檔案不存在,則輸出為 False。如果檔案存在,則輸出為 True。

示例

print(IS_FILE)
IS_FILE = os.path.isfile("C:\Users\xyz\Documents\My Web Sites\intro.html")
print(IS_FILE)
# In nix*
IS_FILE = os.path.isfile("/Documents/MyWebSites")
print(IS_FILE)
IS_FILE = os.path.isfile("/Documents/MyWebSites/music.txt")
print(IS_FILE)

執行上述程式碼得到以下結果:

輸出

False
True
False
True

os.path.normpath

這是一個有趣的函式,它將透過消除額外的斜槓或根據作業系統將反斜槓更改為正斜槓來規範化給定的路徑。如您在下面看到的,輸出根據您執行程式的作業系統而有所不同。

示例

import os
# Windows path
NORM_PATH = os.path.normpath("C:/Users/Pradeep/Documents/My Web Sites")
print(NORM_PATH)
# Unix Path
NORM_PATH = os.path.normpath("/home/ubuuser//Documents/")
print(NORM_PATH)

執行上述程式碼得到以下結果:

輸出

# Running in Windows
C:\Users\Pradeep\Documents\My Web Sites
\home\ubuuser\Documents

# Running in Linux
C:/Users/Pradeep/Documents/My Web Sites
/home/ubuuser/Documents

更新於:2020-12-28

9K+ 瀏覽量

開啟您的 職業生涯

透過完成課程獲得認證

立即開始
廣告