使用calendar.month(2024, 5)可输出2024年5月的日历;2. calendar.calendar(2024)输出全年日历;3. 结合datetime可动态生成当前月份日历;4. calendar.monthcalendar()返回二维列表便于自定义处理。

Python 中可以使用 calendar 模块结合 datetime 或直接使用系统时间来输出日历格式的内容。下面介绍几种常见用法,帮助你用当前时间或指定时间生成 calendar 输出。
1. 输出某年某月的日历
使用 calendar.month(年, 月) 可以打印指定月份的日历:
import calendar
print(calendar.month(2024, 5))
输出结果是一个美观的文本日历,类似:
May 2024
Mo Tu We Th Fr Sa Su
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
2. 输出整年的日历
使用 calendar.calendar(年) 可输出一整年的日历:
立即学习“Python免费学习笔记(深入)”;
import calendar
print(calendar.calendar(2024))
会按每季度三列的方式显示全年 12 个月。
3. 结合当前时间动态输出
如果你想基于当前日期输出当月日历,可以配合 datetime 模块:
Python v2.4版chm格式的中文手册,内容丰富全面,不但是一本手册,你完全可以把她作为一本Python的入门教程,教你如何使用Python解释器、流程控制、数据结构、模板、输入和输出、错误和异常、类和标准库详解等方面的知识技巧。同时后附的手册可以方便你的查询。
import calendar
from datetime import datetime
now = datetime.now()
year = now.year
month = now.month
print(calendar.month(year, month))
这样每次运行都会输出当前月份的日历。
4. 获取日历数据用于自定义处理
如果不想直接打印,而是想获取列表形式的数据,可以用:
-
calendar.monthcalendar(year, month):返回二维列表,表示该月每天的日期分布(0 表示空白)。 - 例如:
calendar.monthcalendar(2024, 5)返回一个 6×7 的列表,每一行代表一周。
你可以遍历它做进一步处理:
for week in calendar.monthcalendar(2024, 5):
print(week)
基本上就这些常用方式。calendar 模块简单实用,适合在命令行工具或脚本中展示时间信息。










