如何在 Python 中获取当前日期和时间

了解如何使用 Python 中的 datetime 模块获取当前日期和时间。使用 strftime 将日期格式化为字符串并处理时区。

在编辑器中尝试此解决方案

概述

处理日期和时间是 Web 开发、数据库记录保存、分析跟踪和自动作业调度的标准要求。 Python 提供了强大的内置工具来通过“datetime”模块处理时间操作。

要获取当前日期和时间,标准方法是调用“datetime.datetime.now()”。如果您只需要日历日期(不包括小时、分钟和秒),则可以使用“datetime.date.today()”。这些返回日期/日期时间对象,将年、月、日和小时等各个字段公开为整数。

要向用户显示日期或将其保存为自定义数据库格式,您必须将这些对象格式化为字符串。 `.strftime()` 方法(字符串格式时间)允许您使用格式代码将日期对象转换为字符串表示形式,例如 `%Y` 表示年份,`%m` 表示月份,`%d` 表示日期。

代码和执行输出

该脚本演示了如何使用日期时间对象、提取组件以及格式化输出。

from datetime import datetime

# 1. Representing date and time using datetime
fixed_time = datetime(2026, 5, 25, 15, 45, 30)
print("Date Object:", fixed_time.date())

# 2. Extracting components
print("Year:", fixed_time.year)
print("Month:", fixed_time.month)
print("Day:", fixed_time.day)

# 3. Format date to string using strftime
formatted = fixed_time.strftime("%A, %B %d, %Y")
print("Formatted Date:", formatted)
端子输出
Date Object: 2026-05-25
Year: 2026
Month: 5
Day: 25
Formatted Date: Monday, May 25, 2026

逐步实施

  • 从日期时间模块导入日期时间。
  • 调用 datetime.now() 获取表示当前本地时间的 datetime 对象。
  • 使用 .strftime() 方法和 %Y-%m-%d 等格式代码将日期序列化为可读字符串。

常见问题解答

如何获取 UTC 时间的当前日期?

您可以导入 timezone 模块并使用 datetime.now(timezone.utc) 或 datetime.utcnow() (在Python 3.12 中已弃用)。

strftime 格式代码(如 %Y、%m 和 %d)代表什么?

%Y 是 4 位数的年份,%m 是 2 位数的月份 (01-12),%d 是 2 位数的月份日期 (01-31)。

相关主题

推荐的 Python 资源

通过相关的交互式教程、备忘单和代码比较来扩展您的知识。