0Pricing
Python Academy · 课时

date、time、datetime

创建和读取日期对象

date、time、datetime 是 CoddyKit 上的免费 Python Academy 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Python Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Python Academy 课程共包含 4 节课。

认识 datetime 模块

Python 的 datetime 模块位于标准库中,为处理日历日期和时钟时间提供了工具。

  • date 存储年、月和日。
  • time 存储小时、分钟、秒和微秒。
  • datetime 将两者合并到一个对象中。

使用 from datetime import date, time, datetime 导入它。

from datetime import date, time, datetime
print(date)
print(time)
print(datetime)

创建 date

传入整数形式的年、月、日来构建 date。月份和日期从 1 开始,并会自动进行验证。

from datetime import date
birthday = date(1995, 7, 14)
print(birthday)

读取 date 字段

日期的每个部分都可以作为属性访问:.year、.month 和 .day。它们是可以用于计算的普通整数。

from datetime import date
d = date(2026, 5, 30)
print('Year:', d.year)
print('Month:', d.month)
print('Day:', d.day)

今天的日期

使用 date.today() 获取当前本地日期。它会返回一个不包含时间部分的 date 对象。

from datetime import date
today = date.today()
print('Today is', today)
print('It is the year', today.year)

创建 time

time 对象表示时钟上的一个时刻。传入小时、分钟、秒(全部可选,默认值为 0)。小时范围为 0 到 23。

from datetime import time
lunch = time(12, 30, 0)
print(lunch)
print('Hour:', lunch.hour)
print('Minute:', lunch.minute)

创建 datetime

datetime 将日期和时间合并在一起。传入年、月、日、小时、分钟、秒。如果省略时间部分,它们的默认值为 0。

from datetime import datetime
launch = datetime(2026, 5, 30, 9, 15, 0)
print(launch)
print('Day:', launch.day)
print('Hour:', launch.hour)

当前时刻

datetime.now() 会返回当前本地日期和时间。这是为事件记录时间戳最常用的方式。

from datetime import datetime
now = datetime.now()
print('Now:', now)
print('Just the hour:', now.hour)

拆分 datetime

datetime 可以返回自身的各个部分。调用 .date() 获取日期部分,调用 .time() 获取时间部分。

from datetime import datetime
moment = datetime(2026, 5, 30, 14, 45, 30)
print('Date part:', moment.date())
print('Time part:', moment.time())

合并日期和时间

如果您有单独的 date 和 time 对象,可以使用 datetime.combine() 将它们合并为一个 datetime。

from datetime import date, time, datetime
d = date(2026, 5, 30)
t = time(8, 0)
combined = datetime.combine(d, t)
print(combined)

比较日期

date 和 datetime 对象支持 <、> 和 == 等比较运算符。较早的日期被视为较小。

from datetime import date
a = date(2026, 1, 1)
b = date(2026, 12, 31)
print(a < b)
print(a == b)
print(max(a, b))

日期的星期几

.weekday() 会以整数形式返回星期几,其中星期一为 0,星期日为 6。.isoweekday() 则使用 1 到 7。

from datetime import date
d = date(2026, 5, 30)
print('weekday():', d.weekday())
print('isoweekday():', d.isoweekday())

快速检查

哪个表达式会同时返回当前本地日期和时间?

回顾:日期和时间

现在您已经了解三种核心类型:

  • date(y, m, d) 用于表示日历日期,并提供 .year、.month 和 .day。
  • time(h, m, s) 用于表示时钟时间。
  • datetime(...) 将两者合并,并可通过 .date() 和 .time() 将其拆分。

使用 date.today() 和 datetime.now() 获取当前时刻,并直接使用 < 和 > 比较对象。

from datetime import date, datetime
print('Today:', date.today())
print('Now:', datetime.now())

常见问题解答

「date、time、datetime」课时是免费的吗?

是的 — 「date、time、datetime」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Python Academy 课程的其余内容,请升级到 CoddyKit PRO。 Python Academy 课程共包含 4 节课。

「date、time、datetime」这节课中我会学到什么?

创建和读取日期对象 你通过在浏览器中直接运行的动手代码来练习 Python Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Python Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Python Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。

「date、time、datetime」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Python Academy 课中编写并运行代码吗?

能。每节 Python Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. date、time、datetime
  2. Timedelta 与算术运算
  3. 格式化与解析
  4. 使用 zoneinfo 处理时区
← 返回 Python Academy