如何使用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()方法時,需要在result[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