如何在Python中獲取檔案的建立和修改日期/時間?
有多種方法可以獲取Python中的檔案建立和修改日期時間。我們將使用來自OS和pathlib模組的不同方法來獲取Python中的檔案建立和修改日期時間。
使用OS模組:Windows上的檔案建立時間
在這裡,我們使用OS模組來查詢檔案的建立時間。首先,我們需要匯入OS模組和datetime模組。OS模組用於獲取時間戳,而datetime模組用於建立datetime物件。os.path.getctime('path')函式用於獲取檔案的建立時間。os.path.getctime('path')返回以浮點數表示的數值時間戳。
示例
在下面的示例程式碼中,我們檢索時間戳格式的建立時間,然後使用datetime.fromtimestamp()建立datetime物件。
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模組用於建立datetime物件。我們使用 os.path.getmtime('path')函式來獲取該檔案的最後修改時間。os.path.getmtime('path')返回數值時間戳。然後,我們使用datetime.fromtimestamp()函式將此時間戳轉換為datetime物件。
示例
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模組用於建立datetime物件。我們使用os.path.getmtime('path')函式來獲取該檔案的最後修改時間。os.path.getmtime('path')返回數值時間戳。然後,我們使用datetime.fromtimestamp()函式將此時間戳轉換為datetime物件。
示例
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模組用於建立datetime物件。我們使用os.stat()函式中的st_birthtime屬性來獲取檔案的建立時間。這將返回一個數值時間戳,透過使用datetime.fromtimestamp()函式將其轉換為datetime物件。。
示例
在這個示例中,我們將瞭解如何在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模組用於建立datetime物件。
pathlib.Path()用於建立檔案的路徑並返回檔案路徑物件。我們使用stat()方法中的st_ctime屬性來獲取檔案的建立時間。這將返回一個數值時間戳,透過使用datetime.fromtimestamp()函式將其轉換為datetime物件。
示例
要獲取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模組用於建立datetime物件。
我們使用st_mtime屬性,它來自stat()方法,用於獲取檔案的最後修改時間。這將返回一個數值時間戳,透過使用datetime.fromtimestamp()函式將其轉換為datetime物件。
示例
在這個示例中,我們將獲取系統上的檔案修改時間。
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
資料結構
網路
關係資料庫管理系統(RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP