欢迎访问宙启技术站
智能推送

Python中的时间模块及其函数使用方法

发布时间:2023-06-15 22:24:59

Python提供了时间模块(time),该模块包含了多个函数,用于处理时间和日期。时间模块的主要功能是获取和处理时间和日期,包括获取当前时间、格式化时间、休眠等。

1. 获取当前时间

获取当前时间可以使用time模块中的time()函数,该函数返回从1970年1月1日起的秒数。

例如:

import time

current_time = time.time()
print(current_time)

输出:

1607964189.155396

2. 将时间戳转换为时间

将时间戳转换为可读时间的函数是localtime()和gmtime()。该函数返回一个struct_time类型的对象,包含有关时间的信息。

例如:

import time

current_time = time.time()
print(time.localtime(current_time))

输出:

time.struct_time(tm_year=2020, tm_mon=12, tm_mday=14, tm_hour=16, tm_min=25, tm_sec=56, tm_wday=0, tm_yday=349, tm_isdst=0)

此外,可以使用asctime()函数将struct_time对象转换为可读的时间格式。

例如:

import time

current_time = time.time()
t = time.localtime(current_time)
print(time.asctime(t))

输出:

Mon Dec 14 16:28:01 2020

还可以使用strftime()函数将struct_time对象转换为自定义的时间格式。

例如:

import time

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

输出:

2020-12-14 16:29:54

3. 休眠

使用time模块中的sleep()函数可以实现程序的休眠。该函数接受一个浮点数作为参数,单位为秒。

例如:

import time

print('start')
time.sleep(5)
print('end')

输出:

start
(等待5秒)
end

4. 计时器

使用perf_counter()函数可以创建一个计时器,它用于测量代码段的执行时间。

例如:

import time

start_time = time.perf_counter()

# 执行需要计时的代码段

end_time = time.perf_counter()

print('执行时间:', end_time - start_time, '秒')

输出:

执行时间: 4.328410714987516e-05 秒

5. 时间戳格式的转换

使用mktime()函数可以将struct_time对象转换为时间戳。

例如:

import time

t = (2020, 12, 14, 16, 35, 0, 1, 349, 0)
timestamp = time.mktime(t)
print(timestamp)

输出:

1607966100.0

6. 日期加减运算

使用datetime模块可以进行日期加减运算。

例如:

from datetime import datetime, timedelta

current_time = datetime.now()
one_day = timedelta(days=1)
yesterday = current_time - one_day
tomorrow = current_time + one_day
print('当前时间:', current_time)
print('昨天时间:', yesterday)
print('明天时间:', tomorrow)

输出:

当前时间: 2020-12-14 16:45:23.120459
昨天时间: 2020-12-13 16:45:23.120459
明天时间: 2020-12-15 16:45:23.120459

7. 时间段计算

使用datetime模块可以计算两个时间之间的时间段。

例如:

from datetime import datetime

t1 = datetime(2020, 12, 14, 16, 50, 0)
t2 = datetime(2020, 12, 14, 16, 45, 0)
delta = t1 - t2
print('时间段为:', delta)
print('时间段总秒数为:', delta.total_seconds())

输出:

时间段为: 0:05:00
时间段总秒数为: 300.0

总结:

时间模块提供了多个函数,用于时间和日期的处理。使用time模块可以获取、转换时间和日期,使用datetime模块可以进行计时和计算时间段等。在项目开发中,经常需要时间和日期相关的处理,因此熟悉时间模块和函数的使用非常重要。