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

学习Python的time模块常用函数

发布时间:2023-05-21 08:32:21

Python中的time模块提供了一个简单而强大的方式来处理时间。它允许你获取系统时间、延迟执行程序、以及格式化日期和时间等。

在本文中,我将介绍时间模块中一些常用的函数及其用法。

1. time()

time()函数返回当前系统时间的时间戳(以秒为单位)。时间戳是从1970年1月1日午夜(GMT时区)开始算起,到当前时间所经过的秒数。

用法:

import time
print(time.time())

输出:

1601707628.863557

2. localtime()

localtime()函数将时间戳转换为本地时间,并返回一个带有本地时间信息的结构体。

用法:

import time
print(time.localtime(1601707628.863557))

输出:

time.struct_time(tm_year=2020, tm_mon=10, tm_mday=3, tm_hour=13, tm_min=27, tm_sec=8, tm_wday=5, tm_yday=277, tm_isdst=0)

3. strftime()

strftime()函数将字符串格式化为时间。它接受一个格式字符串,返回一个包含已格式化的时间的字符串。

常用的格式化字符如下:

| 格式化字符 | 描述 |

| ---------- | ------------------------------------------------------------ |

| %a | 本地简化星期名称(如Mon) |

| %A | 本地完整星期名称(如Monday) |

| %b | 本地简化月份名称(如Jan) |

| %B | 本地完整月份名称(如January) |

| %c | 本地相应的日期和时间表示(如Tue Feb 04 14:19:13 2020) |

| %d | 月内的一天(01~31) |

| %H | 24小时制小时数(00~23) |

| %I | 12小时制小时数(01~12) |

| %j | 年内的一天(001~366) |

| %m | 月份(01~12) |

| %M | 分钟数(00~59) |

| %p | 本地am或pm表示(如AM或PM) |

| %S | 秒(00~60) |

| %U | 年份的周数(00~53),以周日为 天 |

| %w | 星期(0~6),以周日(0)为 天 |

| %W | 年份的周数(00~53),以周一为 天 |

| %x | 本地相应日期表示(如02/04/20) |

| %X | 本地相应时间表示(如14:19:13) |

| %y | 去掉世纪的年份数(00~99) |

| %Y | 完整的年份数字(如2020) |

| %z | 与UTC时间差的小时数,前面有+或-号(如-0700) |

| %Z | 时区的名称或缩写名称(如PST,PDT) |

| %% | 字面意义上的百分号字符 |

用法:

import time
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(1601707628.863557)))

输出:

2020-10-03 13:27:08

4. sleep()

sleep()函数用于延迟程序的执行时间。它接受一个浮点型数字,表示要延迟的时间(以秒为单位)。

用法:

import time
print("开始执行")
time.sleep(3)
print("延迟3秒后执行")

输出:

开始执行
延迟3秒后执行

5. strptime()

strptime()函数从一个字符串解析出一个时间格式。它接受两个参数:一个表示时间字符串的字符串,一个表示时间字符串的格式的字符串。

用法:

import time
dt_str = "2020-10-03 13:27:08"
dt_obj = time.strptime(dt_str, "%Y-%m-%d %H:%M:%S")
print(dt_obj)

输出:

time.struct_time(tm_year=2020, tm_mon=10, tm_mday=3, tm_hour=13, tm_min=27, tm_sec=8, tm_wday=5, tm_yday=277, tm_isdst=-1)

以上就是时间模块中一些常用的函数及其用法。在实际应用中,我们可以根据需要灵活运用这些函数,来满足不同的时间处理需求。