iT邦幫忙

2024 iThome 鐵人賽

DAY 19
0

在Python中,處理日期和時間的相關操作主要通過datetimetimecalendar模塊來完成。這些模塊提供了豐富的功能來操作日期、時間、計算時間差以及格式化時間等。

壹、使用datetime模塊

datetime模塊是Python中最常用的日期和時間處理模塊。

一、獲取當前日期和時間

使用datetime.datetime.now()可以獲取當前的日期和時間。

from datetime import datetime

current_time = datetime.now()
print(f"當前日期和時間: {current_time}")

二、獲取當前的日期

datetime.date.today()可以獲取當前的日期,不包括時間。

from datetime import date

current_date = date.today()
print(f"當前日期: {current_date}")

三、日期對象

date()函數可以用來創建一個日期對象。

from datetime import date

my_date = date(2024, 10, 3)  # 創建日期 2024年10月3日
print(f"創建的日期: {my_date}")

四、時間對象

time()函數可以用來創建一個時間對象。

from datetime import time

my_time = time(14, 30, 45)  # 創建時間 14:30:45
print(f"創建的時間: {my_time}")

五、日期時間對象

datetime()函數可以創建一個日期和時間的組合對象。

from datetime import datetime

my_datetime = datetime(2024, 10, 3, 14, 30, 45)  # 創建日期和時間
print(f"創建的日期和時間: {my_datetime}")

六、格式化日期和時間

使用strftime()方法可以將日期或時間格式化為不同的字符串格式。常用的格式代碼有:

%Y:4位數的年份
%m:月份(01-12)
%d:日期(01-31)
%H:小時(00-23)
%M:分鐘(00-59)
%S:秒(00-59)

formatted_date = current_time.strftime("%Y-%m-%d %H:%M:%S")
print(f"格式化日期和時間: {formatted_date}")

七、解析字符串為日期

使用strptime()方法可以將日期或時間字符串解析為日期時間對象。

date_string = "2024-10-03 14:30:45"
parsed_date = datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S")
print(f"解析後的日期和時間: {parsed_date}")

貳、使用 time 模塊

time模塊主要用來處理Unix時間戳(自1970 年1月1日開始的秒數)以及一些簡單的時間操作。

一、獲取當前時間戳

time.time()可以獲取當前的Unix時間戳。

import time

timestamp = time.time()
print(f"當前時間戳: {timestamp}")

二、延遲程序執行

time.sleep()用來讓程序暫停一段時間。參數為秒數。

print("等待 2 秒...")
time.sleep(2)
print("繼續執行")

三、轉換時間戳為結構化時間

time.localtime()time.gmtime()可以將時間戳轉換為本地時間或UTC時間。

local_time = time.localtime(timestamp)
print(f"本地時間: {local_time}")

utc_time = time.gmtime(timestamp)
print(f"UTC 時間: {utc_time}")

參、使用 timedelta 計算時間差

timedelta用來表示兩個日期或時間之間的差值。

一、計算兩個日期的差

from datetime import date, timedelta

date1 = date(2024, 10, 1)
date2 = date(2024, 10, 3)
diff = date2 - date1
print(f"兩個日期之間的差: {diff.days} 天")

二、增加或減少時間

可以使用timedelta來增加或減少日期或時間。

from datetime import datetime, timedelta

now = datetime.now()
new_time = now + timedelta(days=5)  # 當前時間增加5天
print(f"增加5天後的時間: {new_time}")

肆、使用 calendar 模塊

calendar模塊可以用來操作和顯示日曆。

一、顯示整個年份的日曆

import calendar

year_calendar = calendar.calendar(2024)
print(year_calendar)

二、顯示指定月份的日曆

import calendar

month_calendar = calendar.month(2024, 10)
print(month_calendar)

三、判斷是否為閏年

使用calendar.isleap()可以判斷某一年是否為閏年。

is_leap = calendar.isleap(2024)
print(f"2024 是閏年嗎?{is_leap}")

上一篇
第18天:隨機數
下一篇
第20天:Lambda函數
系列文
python30天入門學習30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言