如何在 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

更新於: 2023-11-02

14K+ 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.