
datetime 中有基本的處理日期及時間的型態,如下表
| 型態 | 說明 |
|---|---|
| date | 處理日期的型態,可取得當地的年、月、日等。 |
| time | 處理時間的型態,一日以 24 * 60 *60 計算。 |
| datetime | 混合 date 及 time 的物件。 |
| timedelta | 計算歷時期間的型態。 |
| timezone | 處理時區資訊的型態。 |
datetime 跟 calendar 與 time 兩個模組有許多相似的功能。
其中 date 有以下常用的類別方法 (class method)
| 類別方法 | 說明 |
|---|---|
| today() | 回傳今天的日期物件 |
另有以下常用的實體方法 (instance method)
| 實體方法 | 說明 |
|---|---|
| replace(year=self.year, month=self.month, day=self.day) | 回傳參數指定的日期物件。 |
| weekday() | 回傳星期幾的整數,星期一為 0 ,依序到星期天為 6 。 |
| isoweekday() | 回傳星期幾的整數,星期一為 1 ,依序到星期天為 7 。 |
| isocalendar() | 回傳 ISO 格式的日期序對,包括年、週及星期序數。 |
| isoformat() | 回傳 ISO 格式的日期字串。 |
| ctime() | 回傳日期時間的字串。 |
以下例子利用 date 物件計算今天是今年的第幾日
from datetime import date
today = date.today()
the_past = date(today.year, 1, 1)
time_to_past = abs(today - the_past)
print(time_to_past.days)
#《程式語言教學誌》的範例程式
# http://kaiching.org/
# 檔名:dtdemo01.py
# 功能:示範 datetime 模組
# 作者:張凱慶
於命令列執行以上程式
| $ python3 dtdemo01.py |
| 63 |
| $ |
其他像 datetime 可以綜合處理日期與時間,建構子 (constructor) 為
| 建構子 | 說明 |
|---|---|
| datetime(year, month, day, hour=0, minute=0, second=0, microsecond=0, tzinfo=None, *, fold=0) | 回傳 datetime 物件。 |
回傳當地 datetime 物件的類別方法
| 類別方法 | 說明 |
|---|---|
| today() | 回傳當地 datetime 物件。 |
| now(tz=None) | 回傳現在當地 datetime 物件。 |
以下為 datetime 物件唯讀的實體屬性 (instance attribute)
| 實體屬性 | 說明 |
|---|---|
| year | 西元紀年。 |
| month | 月份。 |
| day | 該月第幾日。 |
| hour | 該日第幾時。 |
| minute | 該時第幾分。 |
| second | 該分第幾秒。 |
以下例子利用 datetime 物件顯示現在時間
from datetime import datetime
now = datetime.now()
now_str = str(now.hour) + ":" + str(now.minute) + ":" + str(now.second)
print(now_str)
#《程式語言教學誌》的範例程式
# http://kaiching.org/
# 檔名:dtdemo02.py
# 功能:示範 datetime 模組
# 作者:張凱慶
於命令列執行以上程式,結果如下
| $ python3 dtdemo02.py |
| 10:20:56 |
| $ |
相關教學影片
