Python标准库之time库的使用教程详解
作者:指尖听戏 发布时间:2023-07-25 05:25:57
time模块中的三种时间表示方式:
时间戳
结构化时间对象
格式化时间字符串
1.时间戳
时间戳1970.1.1到指定时间到间隔,单位是秒
import time
print(time.time())
输出:
1649834054.98593
计算一个小时之前的时间戳
#计算一个小时之前的时间戳
print(time.time() - 3600)
输出:
1649830637.5699048
2.结构化时间对象
获取当前时间
#获取当前时间
st = time.localtime()
print(type(st))
print(st)
输出:
<class ‘time.struct_time’>
time.struct_time(tm_year=2022, tm_mon=4, tm_mday=13, tm_hour=15, tm_min=19, tm_sec=24, tm_wday=2, tm_yday=103, tm_isdst=0)
st本质上就是一个tuple元祖,一共包含了9个元素
print(f"今天是{st[0]}-{st[1]}-{st[2]}")
输出:
今天是2022-4-13
print(f"今天是星期{st.tm_wday+1}")
这个对象里面的属性是只读 ,我们只能查看,不能去进行修改:
st.tm_wday = 3
此时会报错:
Traceback (most recent call last):
File “/Users/liuhuanhuan/PycharmProjects/Pytorch_frame/python/python基础代码练习/python标准库之time/01.py”, line 18, in
st.tm_wday = 3
AttributeError: readonly attribute
3.格式化时间字符串
#格式化的时间字符串
print(time.ctime())
输出:
Wed Apr 13 15:28:25 2022
#strftime("%Y-%m-%d %H:%M:%s")
print(time.strftime("%Y-%m-%d %H:%M:%S"))
输出:
2022-04-13 15:32:02
print(time.strftime("%Y年-%m月-%d日 %H时:%M分:%S秒"))
输出;
2022年-04月-13日 15时:32分:45秒
print(time.strftime("%Y年-%m月-%d日 %H时:%M分:%S秒 %a"))
print(time.strftime("%Y年-%m月-%d日 %H时:%M分:%S秒 %A"))
print(time.strftime("%Y年-%m月-%d日 %H时:%M分:%S秒 %b"))
print(time.strftime("%Y年-%m月-%d日 %H时:%M分:%S秒 %B"))
输出:
2022年-04月-13日 15时:34分:23秒 Wed
2022年-04月-13日 15时:34分:23秒 Wednesday
2022年-04月-13日 15时:34分:23秒 Apr
2022年-04月-13日 15时:34分:23秒 April
Sleep,等待时间
print("开始")
time.sleep(2)
print("结束")
计算程序计算时间:
t1 = time.time()
print("开始")
time.sleep(2)
print("结束")
t2 = time.time()
print(f"间隔{t2-t1}")
输出:
开始
结束
间隔2.005164861679077
4.三种格式之间的转换
1.时间戳转换为对象的
#两种效果一样
print(time.gmtime())
print(time.gmtime(time.time()))
print(time.localtime())
print(time.localtime(time.time()-3600))
输出;
time.struct_time(tm_year=2022, tm_mon=4, tm_mday=13, tm_hour=7, tm_min=42, tm_sec=26, tm_wday=2, tm_yday=103, tm_isdst=0)
time.struct_time(tm_year=2022, tm_mon=4, tm_mday=13, tm_hour=7, tm_min=42, tm_sec=26, tm_wday=2, tm_yday=103, tm_isdst=0)
time.struct_time(tm_year=2022, tm_mon=4, tm_mday=13, tm_hour=15, tm_min=42, tm_sec=26, tm_wday=2, tm_yday=103, tm_isdst=0)
time.struct_time(tm_year=2022, tm_mon=4, tm_mday=13, tm_hour=14, tm_min=42, tm_sec=26, tm_wday=2, tm_yday=103, tm_isdst=0)
2.#结构化对象转时间戳
#结构化对象转时间戳
print(time.time())
print(time.mktime(time.localtime()))
输出:
1649835895.358733
1649835895.0
3.结构化对象转时间字符串
#结构化对象转时间字符串
print(time.strftime("%Y-%m-%d %H:%m:%S",time.localtime()))
print(time.strftime("%Y-%m-%d %H:%m:%S",time.gmtime(time.time())))
输出:
2022-04-13 15:04:20
2022-04-13 07:04:20
总结图:
来源:https://blog.csdn.net/qq_38140292/article/details/124150040
猜你喜欢
- 这是python编写的用于测试网站访问速率的代码片段,可以输出打开某url的时间,访问100次的平均时间,最大时间和最小时间等等import
- (asp.net的应用). 在网上一搜有很多此类文章,但我需要将公司的复杂的,较大的web应用也以此方式操作,比较的头大。一般的文章建议将b
- 要实现此效果需要 1 个步骤: 第 1 步: 把下面的代码加到<BODY></BODY&g
- 大家都遇到过验证码,随着灌水机的发展,验证码也是日新月异,验证码开始分了繁体简体,带着字母、符号,甚至开始了中文验证码,看到这样的验证码,估
- 分页显示是页面常用技术,可用下列代码来实现:<%page=Request.QueryString("page&q
- udf_WeekDayName 代码如下:CREATE FUNCTION [dbo].[udf_WeekDayName] ( ) RETUR
- 上篇文章讲了js中的传值和传址 和 函数的作用域.这章我们来探讨js中的变量,表达式,和运算符 还有一些 js 语句。升级中……1, 表达式
- 如下图,我们在做图片logo列表的时候通常是用li标签来实现。html:<ul class="logolist&q
- ASP实例代码,利用SQL语句动态创建Access表。留作参考,对在线升级数据库有用处.<% nowtime = now()
- 在安装了IIS以后,缺省的服务器端脚本语言被设置成VBScript。许多Web 开发团队在他们的开发环境中保持了这些缺省设置,这是不幸的,因
- 客户端: <%@ Page Language="C#" AutoEventWireup="true&qu
- IE下专属CSS:<![if !IE]><link rel="stylesheet" type=&qu
- 代码如下:ALTER function [dbo].[GetOrderNum]( @ebaystockflag varchar(20)//规
- 首先要说明的是,这个标题有点标题党的意思,这个 bug 也存在于 IE8 下,在 IE6 和 IE7 下正常。之前写过两篇关于 I
- 如果你看过YUI的RAW源码,会发现很多跟javadoc语法类似的注释。据说(via)是使用JSDoc这个工具。但我探索了一遍,发现YUI多
- ORACLE的这类错误在ORALCE的文档中有详细说明,但原因及措施说明不详细,本文当着重说明如何解决这类错误。1、ORA-12571、OR
- 在Windows系统下,如何在cmd中输入命令来运行.py文件呢?一. 设置环境变量想要在cmd中运行python文件,必须要设置pytho
- 微软建议用Request.BinaryRead()读取表单数据,但由于这种方法读出的是二进制数据,需要对读出的数据逐字节进行分析,生成有意义
- 今天在 ajaxian 上看到一篇文章,名为 Five Ajax Anti-pattern ,觉得讲得比较有道理,现粗略翻译一下,加一些自己
- 二进制转字符串入口参数:字节流函数返回:字符串Code By:Madpolice利用 ADODB.Stream 对象,速度比原来