如何使用Python提取副檔名?
像 Microsoft Windows 這樣的作業系統使用副檔名作為計算機檔名字尾。它屬於元資料類別。作業系統對檔案屬性的理解,以及在某種程度上對所需用法的理解,都由副檔名支援。
我們可能需要在 Python 中提取副檔名。您可以透過多種方式實現此目標。
Os.path 模組
Python 模組 os.path 簡化了 OS 檔案路徑操作。它涵蓋了從檔案路徑接收資料、開啟、儲存和更新等功能。為了在 Python 中獲取副檔名,我們將使用此模組。
os.path 中的函式 splitext() 允許您分離指定檔案路徑的根和副檔名。該函式的輸出是由根字串和副檔名字串組成的元組。
使用 splitext() 方法的示例
函式 os.path.splitext() 返回一個包含兩項的元組:副檔名和帶有檔名路徑,分別。以下是如何使用 os.path 模組提取檔案的示例:
# importing the module import os# Providing the path path = 'D:\Work TP.py'# declaring the variable to get the result result = os.path.splitext(path) print('Path:', result[0]) print('Extension:', result[1])
輸出
現在已成功返回副檔名的根檔案路徑。以下是上述程式碼的輸出:
Path: D:\Work TP Extension: .py
pathlib 模組
Pathlib 是一個 Python 模組,它為表示檔案路徑的類定義了有用的函式和常量。
使用路徑字串作為引數,pathlib.Path() 建立一個新的 Path 物件。
pathlib.Path 物件上的 suffix 屬性返回有關副檔名的資訊。
透過簡單地呼叫 Path 物件內的 parent 和 name 屬性,除了根之外,我們還可以獲得提供的檔案路徑的父檔案路徑和實際檔名。
示例
以下是如何使用 pathlib 模組提取檔案的示例:
import pathlib path = pathlib.Path('D:\Work TP.py') print('Parent:', path.parent) print('NameOfFile:', path.name) print('Extension:', path.suffix)
輸出
以下是上述程式碼的輸出:
Parent: D:\ NameOfFile: Work TP.py Extension: .py
僅提取副檔名字尾(不帶點)
如果要刪除點並僅提取副檔名字尾,例如 py、txt、docx 等,則在使用 splitext() 方法時,需要在結果[1] 後新增“[1:]”,如下所示:
print('Extension:', result[1][1:])
同樣,在使用 pathlib.Path() 方法時,在 path.suffix 後新增“[1:]”,如下所示:
print('Extension:', path.suffix[1:])
示例
下面的程式演示瞭如何使用上面討論的兩種方法列印僅字尾:
# importing the modules import os import pathlib path = 'D:/test.txt' result = os.path.splitext(path) print('Extension:', result[1][1:]) print('Extension:', pathlib.Path('D:/test.txt').suffix[1:])
輸出
Extension: txt Extension: txt
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP