Python 日期时间处理
Python 日期时间处理 · 难度:入门 · +10XP
Python 日期时间处理
datetime是Python标准库中处理日期和时间的核心模块,提供了date、time、datetime、timedelta四个核心类。
获取当前日期时间
from datetime import date, time, datetime, timedelta
# 当前日期
today = date.today()
print(today) # 2026-05-30
# 当前日期时间
now = datetime.now()
print(now) # 2026-05-30 14:30:25.123456
# 创建指定日期
birthday = date(2000, 1, 15)
appointment = datetime(2026, 6, 1, 9, 30, 0)
日期格式化
| 格式码 | 含义 | 示例 |
|---|---|---|
%Y | 四位年份 | 2026 |
%m | 两位月份 | 05 |
%d | 两位日期 | 30 |
%H | 24小时制小时 | 14 |
%M | 分钟 | 30 |
%S | 秒 | 25 |
%A | 星期全名 | Friday |
%B | 月份全名 | May |
dt = datetime.now()
# strftime: datetime → 字符串
print(dt.strftime("%Y-%m-%d %H:%M:%S")) # 2026-05-30 14:30:25
print(dt.strftime("%Y年%m月%d日 %A")) # 2026年05月30日 Friday
# strptime: 字符串 → datetime
d = datetime.strptime("2026-06-01", "%Y-%m-%d")
print(d.month) # 6
时间计算(timedelta)
from datetime import timedelta
today = datetime.now()
# 30天后
future = today + timedelta(days=30)
# 一周前
past = today - timedelta(weeks=1)
# 2小时30分钟后
later = today + timedelta(hours=2, minutes=30)
# 计算两个日期之间的天数
birthday = datetime(2026, 12, 25)
days_left = (birthday - today).days
print(f"距离圣诞节还有 {days_left} 天")
实战练习
- 输入你的生日,计算你已经活了多少天
- 计算2026年元旦是星期几
- 写一个函数计算任意两个日期之间相隔的天数
- 将当前时间格式化为"2026年05月30日 星期五 下午02:30"的中文格式