Python——time模块

本文介绍了Python的time库,包括时间获取(time(), ctime(), gmtime(), localtime())、时间格式化(strftime(), strptime(), asctime())和程序计时(sleep(), perf_counter())。通过实例展示了如何使用这些函数进行时间戳转换、日期字符串格式化及程序暂停等操作,帮助理解time库在Python中的应用。

一、time库包括三类函数

● 时间获取:time()、ctime()、gmtime()、localtime()
● 时间格式化:strftime()、strptime()、asctime()
● 程序计时:sleep()、perf_counter()

二、详细解释

import time
t = time.localtime()
print(time.time())#获取时间戳
print(time.localtime())#默认以以time()函数获取的时间戳作为参数,为当地时间
print(time.localtime(34.54))#参数为浮点数
print(time.gmtime())#获取全球统一时间
print(time.ctime())#将一个时间戳(以s为单位的浮点数)转换为“Sat Jan 13 21:56:34 2018"这种形式(若该函数未收到参数,则默认以time.time()作为参数),转换成的形式为”星期 月份 当月号 时分秒 年份“
print(time.strftime("%Y-%m-%d %H:%M:%S",t)) #将时间格式输出为指定的日期字符串
print(time.strptime("2018-1-26 12:55:20",'%Y-%m-%d %H:%M:%S')) #str是字符串形式的时间值,所以他的格式为前面为字符串,后面为字符串的格式,然后输出的格式为struct_time
print(time.perf_counter()) #perf_counter()获取计算机中CPU也就是中央处理器以其频率运行的时钟纳秒计算
time.sleep(3.3) #让程序去休眠或者产生一定的时间
"""
时间格式控制符    说明
%Y 四位数的年份,取值范围为0001~9999,1900
%m 月份(01~12),例如10
%d 月中的一天(01~31)例如:25
%B 本地完整的月份名称,比如January
%b 本地简化的月份名称,比如Jan
%a 本地简化的周日期,Mon~Sun,例如Wed
%A 本地完整周日期,”Monday~Sunday,例如Wednesday
%H 24小时制小时数(00~23),例如:12
%l 12小时制小时数(01~12),例如:7
%p 上下午,取值为AM或PM
%M 分钟数(00~59),例如26
%S 秒(00~59),例如26

结果:
在这里插入图片描述

### Python 中 `time` 模块的功能与使用方法 #### 1. 时间戳 (Timestamp) 时间戳表示自格林威治标准时间 (GMT) 1970 年 1 月 1 日 00:00:00 起到当前时刻所经过的秒数。可以通过 `time.time()` 方法获取当前时间的时间戳。 ```python import time timestamp = time.time() print(timestamp) # 输出类似于:1729175530.6883082 ``` 这种方法返回的是浮点型数值,精确到毫秒级别[^1]。 --- #### 2. 结构化时间 (Struct Time) 结构化时间是一种更易读的形式,通常由九个字段组成,分别代表年、月、日、小时、分钟、秒等信息。可以使用 `time.localtime()` 或 `time.gmtime()` 将时间戳转化为本地时间和 UTC 时间。 ```python local_time = time.localtime() # 当前本地时间 utc_time = time.gmtime() # 当前UTC时间 print(local_time) # 输出类似于:time.struct_time(tm_year=2023, tm_mon=4, tm_mday=29, ...) print(utc_time) # 输出类似于:time.struct_time(tm_year=2023, tm_mon=4, tm_mday=29, ...) ``` 这些函数会返回一个 `struct_time` 对象,包含了详细的日期和时间信息[^3]。 --- #### 3. 格式化时间 (Formatted String) 通过 `time.strftime(format)` 可以将结构化时间对象转换为指定格式的字符串。常见的格式符包括 `%Y`, `%m`, `%d`, `%H`, `%M`, 和 `%S` 等。 ```python formatted_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) print(formatted_time) # 输出类似于:2023-04-29 11:07:30 ``` 此功能允许开发者灵活定义输出的时间格式[^2]。 --- #### 4. 解析时间字符串 (Strptime) 除了将时间转为字符串外,还可以通过 `time.strptime(string, format)` 将已知格式的时间字符串解析回结构化时间对象。 ```python parsed_time = time.strptime("2023-04-29 11:07:30", "%Y-%m-%d %H:%M:%S") print(parsed_time) # 输出类似于:time.struct_time(tm_year=2023, tm_mon=4, tm_mday=29, ...) ``` 这一操作对于处理外部输入数据非常有用[^2]。 --- #### 5. 延迟执行 (Sleep Function) `time.sleep(seconds)` 是用于暂停程序运行一段时间的一个重要工具。它接受一个参数——延迟的秒数(支持浮点数),并让线程进入休眠状态直到计时结束。 ```python print("Start...") time.sleep(2) # 暂停两秒钟 print("End after two seconds.") ``` 这种技术广泛应用于模拟等待场景或者控制并发任务之间的间隔。 --- #### 6. 不同时间形式间的相互转换 `time.mktime(struct_time)` 函数能够把本地时间的 `struct_time` 转换成对应的时间戳;而反过来则可通过 `time.localtime(secs)` 实现从时间戳向本地时间的转变。 ```python # 示例:从结构化时间到时间戳再回到结构化时间 tupletime = (2023, 4, 29, 11, 7, 30, 6, 120, 0) timestamp_from_tuple = time.mktime(tupletime) converted_back_to_struct = time.localtime(timestamp_from_tuple) print(converted_back_to_struct) # 应该得到原始的 tupletime 数据 ``` --- ### 总结 Python 的 `time` 模块提供了多种方式来处理不同类型的日期和时间表达形式,无论是简单的延时还是复杂的跨格式变换都能轻松应对[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值