python之内置模块time模块和datetime模块详解

1. time模块介绍

Python的time模块提供了与时间相关的函数和类,可以用来获取和操作时间。time模块主要包含了以下几种类型和函数:

1.1 time.time()

time.time()函数返回从1970年1月1日以来的当前时间的秒数。该函数通常用于计算程序的运行时间。

import time

start_time = time.time()

# 执行一些代码

end_time = time.time()

execution_time = end_time - start_time

print("代码执行时间:", execution_time)

上述代码使用time.time()函数来计算一段代码的执行时间。

1.2 time.strftime(format, struct_time)

time.strftime()函数根据指定的格式(format)将时间转换成字符串。它接受两个参数:format和struct_time。

format参数是指定输出时间格式的字符串,可以使用一系列的格式化代码。以下是常用的格式化代码:

%Y: 年份(4位数)

%m: 月份(01-12)

%d: 日期(01-31)

%H: 小时(00-23)

%M: 分钟(00-59)

%S: 秒钟(00-59)

import time

current_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())

print("当前时间:", current_time)

上述代码使用time.strftime()函数将当前时间转换成指定格式的字符串并打印出来。

1.3 time.sleep(seconds)

time.sleep()函数用于使程序休眠指定的秒数。通常在需要暂停程序执行一段时间的场景下使用。

import time

print("程序开始")

time.sleep(5) # 休眠5秒

print("程序结束")

重要:在上述代码中,使用time.sleep()函数实现了程序暂停5秒钟的效果。

2. datetime模块介绍

datetime模块提供了处理日期和时间的类和函数。与time模块不同,datetime模块提供了更多可以进行日期和时间运算的功能。

2.1 datetime.date类

datetime.date类用于表示日期。它的构造函数接受年、月、日作为参数,返回一个表示该日期的对象。

import datetime

today = datetime.date(2022, 1, 1)

print("今天的日期:", today)

上述代码创建了一个表示2022年1月1日的日期对象,并打印出来。

2.2 datetime.time类

datetime.time类用于表示时间。它的构造函数接受时、分、秒、微秒作为参数,返回一个表示该时间的对象。

import datetime

current_time = datetime.time(12, 30, 45)

print("当前时间:", current_time)

上述代码创建了一个表示12点30分45秒的时间对象,并打印出来。

2.3 datetime.datetime类

datetime.datetime类继承自date类和time类,可以表示日期和时间。它的构造函数接受年、月、日、时、分、秒、微秒作为参数,返回一个表示该日期时间的对象。

import datetime

current_datetime = datetime.datetime(2022, 1, 1, 12, 30, 45)

print("当前日期时间:", current_datetime)

上述代码创建了一个表示2022年1月1日12点30分45秒的日期时间对象,并打印出来。

2.4 datetime.timedelta类

datetime.timedelta类用于表示时间间隔。它的构造函数接受一个或多个参数,包括days、seconds、microseconds。它可以用于对日期和时间进行加减操作。

import datetime

today = datetime.date.today()

tomorrow = today + datetime.timedelta(days=1)

print("明天的日期:", tomorrow)

重要:在上述代码中,使用datetime.timedelta类实现了对日期的加法运算,从而求出了明天的日期。

2.5 datetime.datetime.strptime()

datetime.datetime.strptime()函数用于将字符串解析为datetime对象。它接受两个参数:字符串和格式化代码。

import datetime

date_string = "2022-01-01 12:30:45"

date_object = datetime.datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S")

print("解析后的日期时间:", date_object)

上述代码将字符串"2022-01-01 12:30:45"解析为一个datetime对象,并打印出来。

3. 总结

time模块和datetime模块提供了丰富的函数和类来处理时间和日期。time模块主要用于获取当前时间、计算代码执行时间以及实现程序暂停等功能;而datetime模块则提供了更多处理日期和时间的功能,包括日期和时间的表示、日期和时间的加减运算等。通过合理使用这两个模块,可以方便地处理时间和日期相关的问题。

后端开发标签