苦练Python第43天:datetime和calendar模块的使用

前言

大家好,我是倔强青铜三 。欢迎关注我,微信公众号:倔强青铜三。欢迎点赞、收藏、关注,一键三连!!!

日期与时间无处不在:排程任务、记录日志、为数据打时间戳、甚至构建日历。

Python 用两个强大的模块: datetimecalendar ,让这一切变得轻而易举。今天,你将像行家一样玩转日期、时间与日历。⏰


📦 导入模块

python 复制代码
import datetime
import calendar

🕰️ 1. 获取当前日期与时间

python 复制代码
from datetime import datetime

now = datetime.now()
print("当前日期与时间:", now)
print("日期:", now.date())
print("时间:", now.time())

📌 输出示例

makefile 复制代码
当前日期与时间: 2025-08-01 14:30:22.123456
日期: 2025-08-01
时间: 14:30:22.123456

📆 2. 创建自定义日期与时间

python 复制代码
from datetime import date, time

# 创建日期
my_date = date(2025, 12, 25)
print("自定义日期:", my_date)

# 创建时间
my_time = time(14, 30, 0)
print("自定义时间:", my_time)

⏳ 3. 日期运算(timedelta)

利用 timedelta 进行加减:

python 复制代码
from datetime import timedelta

today = date.today()
future = today + timedelta(days=10)
past = today - timedelta(days=30)

print("今天:", today)
print("10天后:", future)
print("30天前:", past)

🗓️ 4. 格式化与解析日期

✅ 用 strftime() 格式化

python 复制代码
print(now.strftime("%Y-%m-%d %H:%M:%S"))
print(now.strftime("%A, %B %d, %Y"))  # Friday, August 01, 2025

✅ 用 strptime() 解析字符串

python 复制代码
date_str = "2025-12-31"
parsed_date = datetime.strptime(date_str, "%Y-%m-%d")
print(parsed_date)

📜 5. 玩转 calendar 模块

calendar 是生成与探索日历数据的利器。

✅ 打印月度日历

python 复制代码
import calendar
print(calendar.month(2025, 8))

✅ 检查闰年

python 复制代码
print(calendar.isleap(2024))  # True
print(calendar.isleap(2025))  # False

✅ 获取全年日历

python 复制代码
print(calendar.calendar(2025))

⏱️ 6. 计时(性能测试)

datetime 测量执行耗时:

python 复制代码
start = datetime.now()

# 模拟任务
for _ in range(1000000):
    pass

end = datetime.now()
print("执行耗时:", end - start)

🧠 strftime 速查表

代码 含义 示例
%Y 年(4位) 2025
%m 月(01-12) 08
%d 日(01-31) 01
%H 时(00-23) 14
%M 分(00-59) 30
%S 秒(00-59) 22
%A 星期(全称) Friday
%B 月份(全称) August

🎯 实战挑战

  1. 将当前日期时间打印为:Friday, 01 August 2025 - 02:30 PM
  2. 让用户输入生日,计算其存活天数。
  3. 显示本月日历。

🧾 小结

  • datetime 处理日期、时间与时间差
  • strftime()strptime() 负责格式化和解析
  • calendar 展示日历并判断闰年

最后感谢阅读!欢迎关注我,微信公众号倔强青铜三。欢迎 点赞收藏关注,一键三连!

相关推荐
小狗丹尼40014 分钟前
JSON 基础认知、数据转换与 Flask 前后端交互全解
python·flask·json
默默开发1 小时前
完整版:本地电脑 + WiFi 搭建 AI 自动炒股 + 自我学习系统
人工智能·学习·电脑
zzh940771 小时前
2026年AI文件上传功能实战:聚合站处理图片、PDF、PPT全指南
人工智能·pdf·powerpoint
zm-v-159304339862 小时前
Python 数据挖掘从入门到精通:回归 / 分类 / 聚类 / 关联分析完整教程
python·数据挖掘·回归
新缸中之脑6 小时前
Paperless-NGX实战文档管理
人工智能
似水明俊德7 小时前
02-C#.Net-反射-面试题
开发语言·面试·职场和发展·c#·.net
qq_417695058 小时前
机器学习与人工智能
jvm·数据库·python
无极低码8 小时前
ecGlypher新手安装分步指南(标准化流程)
人工智能·算法·自然语言处理·大模型·rag
漫随流水8 小时前
旅游推荐系统(view.py)
前端·数据库·python·旅游
grant-ADAS8 小时前
记录paddlepaddleOCR从环境到使用默认模型,再训练自己的数据微调模型再推理
人工智能·深度学习