Python datetime模块使用教程:日期时间操作指南

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

Python datetime模块基础入门

在编程中,日期和时间的处理是常见且重要的任务。Python提供了强大而灵活的datetime模块,让你能够轻松管理日期、时间、时间间隔以及格式化操作。

如果你曾困惑如何在Python中获取今天的日期、计算两个日期之间的差值,或者将字符串转换为日期对象,本文将为你提供完整的解答,并附上可直接运行的代码示例。

什么是datetime模块

datetime模块是Python标准库的一部分,提供了用于处理时间和日期的类。该模块是内置模块,无需额外安装即可使用。

通过datetime模块,你可以实现以下功能:

  • 获取当前的日期和时间
  • 对日期进行算术运算
  • 格式化日期以及在不同格式间转换
  • 通过timedelta类处理时间间隔
  • 管理时区信息

导入模块的标准方式如下:

import datetime

获取当前日期和时间

如何获取今天的日期

获取当前日期是最常见的操作之一。使用date类的today()方法即可实现:

from datetime import date
today = date.today()
print(f"今天的日期是:{today}")

输出格式为YYYY-MM-DD,例如:2025-05-09。

同时获取当前时间和日期

如果需要同时获取日期和时间,请使用datetime类和now()方法:

from datetime import datetime
now = datetime.now()
print(f"当前的日期和时间:{now}")

提取日期和时间的各个组成部分

datetime模块允许你轻松提取日期和时间的各个部分:

current_time = datetime.now()
print(f"年份:{current_time.year}")
print(f"月份:{current_time.month}")
print(f"日期:{current_time.day}")
print(f"小时:{current_time.hour}")
print(f"分钟:{current_time.minute}")
print(f"秒钟:{current_time.second}")

日期和时间的格式化

格式化基础

很多时候我们需要将日期以更易读的形式呈现。这时可以使用strftime()方法,通过指定格式代码来控制输出样式:

now = datetime.now()
formatted = now.strftime("%d-%m-%Y %H:%M:%S")
print(f"格式化后的日期和时间:{formatted}")

常用格式化代码

datetime模块支持多种格式化代码:

  • %Y — 四位数的年份,例如:2025
  • %m — 带前导零的月份,例如:05
  • %d — 月份中的日期,例如:09
  • %H — 24小时制的小时,例如:14
  • %M — 分钟,例如:30
  • %S — 秒钟,例如:45
  • %A — 星期几的完整名称,例如:Friday
  • %B — 月份的完整名称,例如:May

将字符串转换为日期

如果你有一个日期字符串,需要将其转换为datetime对象,可以使用strptime()方法:

from datetime import datetime
date_string = "09-05-2025"
converted_date = datetime.strptime(date_string, "%d-%m-%Y")
print(f"转换后的日期:{converted_date}")

日期的算术运算

计算两个日期之间的差值

datetime模块可以轻松计算两个日期之间的天数差,结果以timedelta对象表示:

from datetime import date
date1 = date(2025,                

博客

书籍推荐