如何在 Python 中獲取檔案的建立和修改日期/時間?
有多種方法可以在 Python 中獲取檔案的建立和修改日期時間。我們將使用來自 OS 和 pathlib 模組的不同方法來在 Python 中獲取檔案的建立和修改日期時間。
使用 OS 模組:Windows 上的檔案建立時間
在這裡,我們使用了 OS 模組來查詢檔案的建立時間。最初,我們需要匯入 OS 模組和 datetime 模組。OS 模組用於獲取時間戳,而 datetime 模組用於建立日期時間物件。os.path.getctime('path') 函式用於獲取檔案的建立時間。 os.path.getctime('path') 以浮點數形式返回數字時間戳中的建立時間。
示例
在以下示例程式碼中,我們以時間戳格式檢索建立時間,然後使用 datetime.fromtimestamp() 建立一個 datatime 物件。
import datetime import os path = r"C:\Examples\samplefile.txt" create_time = os.path.getctime(path) print(create_time) create_date = datetime.datetime.fromtimestamp(create_time) print('Created on:', create_date)
輸出
給定示例生成的輸出如下所示。
1652690657.7901006 Created on: 2022-05-16 14:14:17.790101
使用 OS 模組:Windows 上的檔案修改時間
在這裡,我們使用 OS 模組查詢檔案的最後修改時間。最初,我們需要匯入 OS 模組和 datetime 模組。OS 模組用於獲取時間戳,而 datetime 模組用於建立日期時間物件。我們使用 os.path.getmtime('path') 函式來獲取該檔案的最後修改時間。os.path.getmtime(‘path’) 返回數字時間戳中的修改時間。然後,我們使用datetime.fromtimestamp() 函式將此時間戳轉換為日期時間物件。
示例
import datetime import os path = r"C:\Examples\samplefile.txt" modify_time = os.path.getmtime(path) print(modify_time) modify_date = datetime.datetime.fromtimestamp(modify_time) print('Modified on:', modify_date)
輸出
1652690891.8609138 Modified on: 2022-05-16 14:18:11.860914
使用 OS 模組:MAC 和 UNIX 上的檔案修改時間
在這裡,我們使用 OS 模組查詢檔案的最後修改時間。最初,我們需要匯入 OS 模組和 datetime 模組。OS 模組用於獲取時間戳,而 datetime 模組用於建立日期時間物件。我們使用 os.path.getmtime('path') 函式來獲取該檔案的最後修改時間。 os.path.getmtime('path') 返回數字時間戳中的修改時間。然後,我們使用datetime.fromtimestamp() 函式將此時間戳轉換為日期時間物件。
示例
import datetime import os path = r"C:\Examples\samplefile.txt" modify_time = os.path.getmtime(path) print(modify_time) modify_date = datetime.datetime.fromtimestamp(modify_time) print('Modified on:', modify_date)
輸出
1652690891.8609138 Modified on: 2022-05-16 14:18:11.860914
使用 OS 模組:MAC 和 UNIX 上的檔案修改時間
這裡透過使用 OS 和 datetime 模組獲取 Mac 和 Unix 系統上的檔案建立時間。OS 模組用於獲取時間戳,而 datetime 模組用於建立日期時間物件。我們使用 os.stat() 函式的st_birthtime 屬性來獲取檔案的建立時間。這將返回一個數字時間戳,透過使用datetime.fromtimestamp() 函式將其轉換為日期時間物件。。
示例
在本例中,我們將瞭解如何在 MAC 和 UNIX 系統上獲取檔案建立的時間戳。
import os import datetime path = r"C:\Examples\samplefile.txt" stat = os.stat(path) create_timestamp = stat.st_birthtime print(create_timestamp) create_time = datetime.datetime.fromtimestamp(create_timestamp) print(create_time)
輸出
上述程式獲得的輸出如下所示。
1652690657.7901006 Created on: 2022-05-16 14:14:17.790101
使用 Pathlib 模組:Windows 上的檔案建立時間
在這裡,我們使用 pathlib 模組來獲取檔案的建立時間。我們最初匯入 pathlib 和 datetime 模組。pathlib 模組用於獲取時間戳,而 datetime 模組用於建立日期時間物件。
pathlib.Path() 用於建立檔案路徑並返回檔案路徑物件。我們使用stat() 方法的 st_ctime 屬性來獲取檔案的建立時間。這將返回一個數字時間戳,透過使用datetime.fromtimestamp() 函式將其轉換為日期時間物件。
示例
要獲取 Windows 作業系統上檔案建立的時間戳,可以使用以下程式。
import datetime import pathlib filename = pathlib.Path(r'C:\Examples\samplefile.txt') create_timestamp = filename.stat().st_ctime print(create_timestamp) create_time = datetime.datetime.fromtimestamp(create_timestamp) print(create_time)
輸出
執行上述程式時生成的輸出如下所示。
1652690657.7901006 2022-05-16 14:14:17.790101
使用 Pathlib 模組:Windows 上的檔案修改時間
在這裡,我們使用 pathlib 模組查詢檔案的最後修改時間。最初,我們需要匯入 pathlib 模組和 datetime 模組。pathlib 模組用於獲取時間戳,而 datetime 模組用於建立日期時間物件。
我們使用st_mtime 屬性,該屬性來自stat() 方法,用於獲取檔案的最後修改時間。這將返回一個數字時間戳,透過使用datetime.fromtimestamp() 函式將其轉換為日期時間物件。
示例
在本例中,我們將獲取系統上的檔案修改時間。
import datetime import pathlib filename = pathlib.Path(r'C:\Examples\samplefile.txt') modify_timestamp = filename.stat().st_mtime print(modify_timestamp) modify_date = datetime.datetime.fromtimestamp(modify_timestamp) print('Modified on:', modify_date)
輸出
生成的輸出顯示如下。
1652690891.8609138 Modified on: 2022-05-16 14:18:11.860914
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP