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

Python中时间处理函数:strftime、strptime、time等

发布时间:2023-09-14 12:19:48

Python中有很多可以用来处理时间的函数,其中包括strftime、strptime和time等。下面将要分别介绍这三个函数及其用法。

1. strftime函数:

在Python中,strftime函数用于将时间格式化为字符串。它接受一个时间对象和一个指定的格式字符串作为参数,并返回格式化后的时间字符串。常用的格式化符号有:

- %Y:四位数的年份

- %m:两位数的月份(01-12)

- %d:两位数的日(01-31)

- %H:24小时制的小时(00-23)

- %M:分钟(00-59)

- %S:秒(00-59)

- %a:星期的简写形式(Sun-Sat)

- %A:星期的全写形式(Sunday-Saturday)

- %b:月份的简写形式(Jan-Dec)

- %B:月份的全写形式(January-December)

下面是一个示例使用strftime函数的代码:

import datetime

now = datetime.datetime.now()
time_str = now.strftime("%Y-%m-%d %H:%M:%S")
print(time_str)

输出结果:

2022-01-01 15:30:45

2. strptime函数:

与strftime函数相反,strptime函数用于将字符串解析为时间对象。它接受一个时间字符串和一个指定的格式字符串作为参数,并返回对应的时间对象。

下面是一个示例使用strptime函数的代码:

import datetime

time_str = "2022-01-01 15:30:45"
time_obj = datetime.datetime.strptime(time_str, "%Y-%m-%d %H:%M:%S")
print(time_obj)

输出结果:

2022-01-01 15:30:45

3. time模块:

在Python中,time模块提供了很多与时间相关的函数,比如获取当前时间、获取时间戳、等待一段时间等。下面是一些常用的time模块函数:

- time.time():返回当前时间的时间戳(自1970年1月1日以来的秒数)。

- time.localtime():返回当前时间的本地时间对象。

- time.strftime():将时间格式化为字符串。

- time.sleep():让程序暂停指定的秒数。

- time.gmtime():返回当前时间的UTC时间对象。

下面是一个示例使用time模块的代码:

import time

timestamp = time.time()
print(timestamp)

local_time = time.localtime(timestamp)
print(local_time)

time_str = time.strftime("%Y-%m-%d %H:%M:%S", local_time)
print(time_str)

time.sleep(2)
print("2 seconds later")

utc_time = time.gmtime()
print(utc_time)

输出结果:

1672568963.5275717
time.struct_time(tm_year=2022, tm_mon=1, tm_mday=1, tm_hour=15, tm_min=30, tm_sec=45, tm_wday=5, tm_yday=1, tm_isdst=0)
2022-01-01 15:30:45
2 seconds later
time.struct_time(tm_year=2022, tm_mon=1, tm_mday=1, tm_hour=7, tm_min=30, tm_sec=57, tm_wday=5, tm_yday=1, tm_isdst=0)

综上所述,strftime、strptime和time等函数是Python中常用的时间处理函数,可以方便地将时间对象与字符串之间进行转换,以及进行时间格式的处理和计算。