wordpress 菜單 圖片汕頭網(wǎng)站建設(shè)方案優(yōu)化
在 Python 中,處理日期和時(shí)間的常用庫(kù)是 datetime
。此外,還有一些第三方庫(kù)如 pytz
和 dateutil
可以幫助處理時(shí)區(qū)和日期解析。
1. 使用 datetime
模塊
導(dǎo)入模塊
from datetime import datetime, date, time, timedelta
獲取當(dāng)前日期和時(shí)間
now = datetime.now()
print("Current date and time:", now)
創(chuàng)建日期和時(shí)間對(duì)象
# 創(chuàng)建日期對(duì)象
d = date(2023, 10, 1)
print("Date:", d)# 創(chuàng)建時(shí)間對(duì)象
t = time(14, 30, 45)
print("Time:", t)# 創(chuàng)建日期時(shí)間對(duì)象
dt = datetime(2023, 10, 1, 14, 30, 45)
print("Datetime:", dt)
日期和時(shí)間格式化
# 格式化日期時(shí)間對(duì)象為字符串
formatted_date = dt.strftime("%Y-%m-%d %H:%M:%S")
print("Formatted datetime:", formatted_date)# 解析字符串為日期時(shí)間對(duì)象
parsed_date = datetime.strptime("2023-10-01 14:30:45", "%Y-%m-%d %H:%M:%S")
print("Parsed datetime:", parsed_date)
日期和時(shí)間的加減
# 當(dāng)前日期時(shí)間
now = datetime.now()# 加減時(shí)間
one_day = timedelta(days=1)
yesterday = now - one_day
tomorrow = now + one_dayprint("Yesterday:", yesterday)
print("Tomorrow:", tomorrow)
2. 使用 pytz
處理時(shí)區(qū)
pytz
是一個(gè)處理時(shí)區(qū)的第三方庫(kù)。
安裝 pytz
pip install pytz
使用 pytz
import pytz# 獲取當(dāng)前時(shí)間
now = datetime.now()# 設(shè)置時(shí)區(qū)
utc = pytz.utc
eastern = pytz.timezone('US/Eastern')# 將當(dāng)前時(shí)間轉(zhuǎn)換為 UTC
now_utc = now.astimezone(utc)
print("Current time in UTC:", now_utc)# 將當(dāng)前時(shí)間轉(zhuǎn)換為東部時(shí)間
now_eastern = now.astimezone(eastern)
print("Current time in Eastern Time:", now_eastern)
3. 使用 dateutil
解析日期
dateutil
是一個(gè)強(qiáng)大的日期解析庫(kù)。
安裝 dateutil
pip install python-dateutil
使用 dateutil
from dateutil import parser# 解析日期字符串
date_str = "2023-10-01 14:30:45"
parsed_date = parser.parse(date_str)
print("Parsed datetime:", parsed_date)
4. 其他常見操作
獲取日期的各個(gè)部分
now = datetime.now()
print("Year:", now.year)
print("Month:", now.month)
print("Day:", now.day)
print("Hour:", now.hour)
print("Minute:", now.minute)
print("Second:", now.second)
日期比較
date1 = datetime(2023, 10, 1)
date2 = datetime(2023, 10, 2)if date1 < date2:print("date1 is earlier than date2")
elif date1 > date2:print("date1 is later than date2")
else:print("date1 is the same as date2")
日期差異
date1 = datetime(2023, 10, 1)
date2 = datetime(2023, 10, 2)difference = date2 - date1
print("Difference in days:", difference.days)