如何在 Python 中從路徑獲取檔名
-
使用
ntpath
庫從路徑中獲取檔名 -
使用
ntpath.basename()
從路徑中獲取檔名 -
Python 使用
os.path.basename()
從路徑中獲取檔名 -
Python 使用
os.path.split()
從路徑獲取檔名
本教程介紹瞭如何在 Python 中從路徑中獲取檔名。它還列出了一些示例程式碼,以進一步演示與特定作業系統相關的概念。
使用 ntpath
庫從路徑中獲取檔名
定義路徑的方式可以是不同的。在 Windows 中,檔案的路徑可以使用反斜線或正斜線作為路徑分隔符。因此,ntpath
模組將適用於所有平臺上的所有路徑。
ntpath
庫支援一個函式是 basename
。這個函式傳遞一個 path
,執行後,ntpath.basename(path)
從給定的 path
中返回檔名。使用該方法的基本例子如下所示。
import ntpath
print(ntpath.basename("usr/temp/new/sample"))
輸出:
sample
使用 ntpath.basename()
從路徑中獲取檔名
這個庫同樣適用於 Linux。然而,在 Linux 中,檔名可能包含反斜槓。所以在 Linux 中,r'usr/xyz\python'
總是指 usr
資料夾中的 xyz\python
檔案。
import ntpath
print(ntpath.basename("r'usr/xyz\python'"))
輸出:
xyz\python
它指的是 Windows 中 usr
資料夾下 xyz
子資料夾中的檔名 python
。當一個路徑中同時使用後斜槓和前斜槓時,我們應該知道我們使用的是哪個平臺,否則,你可能無法正確解釋路徑。
還有一種方法可以從路徑中獲取檔名,即 os.path.basename()
。
Python 使用 os.path.basename()
從路徑中獲取檔名
你也可以使用 os.path
庫提供的一個函式從路徑中獲取檔名。這個函式是 basename
,用來獲取檔名。
basename
以 path
為引數,返回 filename
。
以下是程式碼示例。
import os
print(os.path.basename("usr/temp/eng"))
輸出:
eng
如果系統是 POSIX,並且傳遞給 os.path.basename()
的是一個包含雙斜線的 windows 風格的路徑,那麼輸出將是給出的完整路徑。
# in Linux
import os
print(os.path.basename("E:\\aws\\temp.jpg"))
輸出:
E:\\aws\\temp.jpg
Python 使用 os.path.split()
從路徑獲取檔名
如果需要單獨的頭和尾,可以使用 os.path.split()
方法。該方法以 path
為引數,返回路徑的 head
和 tail
。
下面是一個示例程式碼。
import os
head, tail = os.path.split("/Users/xyz/Downloads")
print(head)
print(tail)
輸出:
/Users/xyz
Downloads
Syed Moiz is an experienced and versatile technical content creator. He is a computer scientist by profession. Having a sound grip on technical areas of programming languages, he is actively contributing to solving programming problems and training fledglings.
LinkedIn