6.3 datetime 日期与时间处理

datetime 模块是 Python 标准库中用于处理日期和时间的模块。在本节中,我们将介绍 datetime 模块的一些常用功能,并通过实例代码详细讲解每个知识点。

6.3.1 导入 datetime 模块

要使用 datetime 模块,首先需要导入它:

import datetime

6.3.2 datetime 类

datetime 模块提供了一个名为 datetime 的类,用于表示日期和时间。以下是一些创建 datetime 对象的方法:

1. 当前日期和时间

要获取当前的日期和时间,可以使用 datetime.now() 方法:

import datetime

current_datetime = datetime.datetime.now()
print(f"Current date and time: {current_datetime}")

2. 指定日期和时间

要创建一个具有指定日期和时间的 datetime 对象,可以使用 datetime 类的构造函数:

import datetime

dt = datetime.datetime(2023, 6, 6, 12, 30, 45)
print(f"Specified date and time: {dt}")

在这个例子中,我们创建了一个表示 2023 年 6 月 6 日 12:30:45 的 datetime 对象。

6.3.3 date 类

datetime 模块还提供了一个名为 date 的类,用于表示日期。以下是一些创建 date 对象的方法:

1. 当前日期

要获取当前的日期,可以使用 date.today() 方法:

import datetime

current_date = datetime.date.today()
print(f"Current date: {current_date}")

2. 指定日期

要创建一个具有指定日期的 date 对象,可以使用 date 类的构造函数:

import datetime

d = datetime.date(2023, 6, 6)
print(f"Specified date: {d}")

在这个例子中,我们创建了一个表示 2023 年 6 月 6 日的 date 对象。

6.3.4 time 类

datetime 模块还提供了一个名为 time 的类,用于表示时间。以下是一些创建 time 对象的方法:

1. 指定时间

要创建一个具有指定时间的 time 对象,可以使用 time 类的构造函数:

import datetime

t = datetime.time(12, 30, 45)
print(f"Specified time: {t}")

在这个例子中,我们创建了一个表示 12:30:45 的 time 对象。

6.3.5 timedelta 类

datetime 模块提供了一个名为 timedelta 的类,用于表示时间间隔。以下是一些创建 timedelta 对象的方法:

1. 指定时间间隔

要创建一个具有指定时间间隔的 timedelta 对象,可以使用 timedelta 类的构造函数:

import datetime

delta = datetime.timedelta(days=7, hours=2)
print(f"Specified timedelta: {delta}")

在这个例子中,我们创建了一个表示 7 天 2 小时的时间间隔。

2. 运算

可以使用 timedelta 对象进行日期和时间的运算。

示例:

import datetime

current_date = datetime.date.today()
delta = datetime.timedelta(days=7)

future_date = current_date + delta
print(f"Current date: {current_date}")
print(f"Future date: {future_date}")

在这个例子中,我们计算了当前日期后的 7 天的日期。

6.3.6 格式化日期和时间

strftime() 方法用于将 datetimedate 和 time 对象格式化为字符串。以下是一些常用的格式化代码:

  • %Y:四位数的年份
  • %m:月份(01-12)
  • %d:日(01-31)
  • %H:小时(00-23)
  • %M:分钟(00-59)
  • %S:秒(00-59)

示例:

import datetime

current_datetime = datetime.datetime.now()
formatted_datetime = current_datetime.strftime("%Y-%m-%d %H:%M:%S")
print(f"Formatted date and time: {formatted_datetime}")

在这个例子中,我们将当前日期和时间格式化为 "YYYY-MM-DD HH:MM:SS" 格式的字符串。

6.3.7 解析日期和时间

strptime() 方法用于将字符串解析为 datetime 对象。它需要两个参数:要解析的字符串和解析使用的格式。

示例:

import datetime

date_string = "2023-06-06 12:30:45"
format_string = "%Y-%m-%d %H:%M:%S"

parsed_datetime = datetime.datetime.strptime(date_string, format_string)
print(f"Parsed date and time: {parsed_datetime}")

在这个例子中,我们将 "2023-06-06 12:30:45" 格式的字符串解析为 datetime 对象。

6.3.8 替换日期和时间的部分值

replace() 方法用于替换 datetimedate 和 time 对象的部分值。

示例:

import datetime

current_datetime = datetime.datetime.now()
new_datetime = current_datetime.replace(year=2024, month=1)

print(f"Current date and time: {current_datetime}")
print(f"New date and time: {new_datetime}")

在这个例子中,我们将当前日期和时间的年份和月份替换为 2024 年 1 月。

以上就是 Python 标准库中 datetime 模块的基本介绍。通过这些实例,你应该已经对如何使用 datetime 模块处理日期和时间有了一个基本的了解。在实际编程中,可以根据具体需求选择合适的方法进行日期和时间的操作。
推荐阅读:

https://mp.weixin.qq.com/s/dV2JzXfgjDdCmWRmE0glDA

https://mp.weixin.qq.com/s/an83QZOWXHqll3SGPYTL5g

file

你可能感兴趣的:(人工智能)