python 时间模块大全time 200308

延迟功能

想让程序停顿几秒钟

time.sleep(秒数)

例如

print(1)
time.sleep(2)
print(2)

结果,在打印了1后会停2秒,然后再打印2

time模块时间转换图

》三种时间格式

  • 时间戳
  • 时间元组对象
  • 格式化时间字符串

时间戳,是计算机可识别的一个时间形态

格式化时间字符串,是人类可识别的一个时间形态

时间元组,则是二个时间的过渡体

可以把这三者间的关系,理解为

冰,水,汽体,的关系

冰,要转变为汽体,一定会有一个变为水的过程

而汽体转变为冰,也是同样

水,就是struct_time的一个比喻

详情看图
在这里插入图片描述

获取时间戳

在这里插入图片描述

时间戳 = time.time()

例子

import time

now = time.time()
print(now)

1566114429.1101348

时间戳转格式化时间元组

在这里插入图片描述

》转为本地的时间元组

把当前时间转为时间元组
时间元组 = time.localtime()

根据一个时间戳转为时间元组
时间元组 = time.localtime(时间戳)

代码

import time

now = time.time()
s_time = time.localtime(now)
print(s_time)

time.struct_time(tm_year=2019, tm_mon=8, tm_mday=18, tm_hour=15, tm_min=50, tm_sec=21, tm_wday=6, tm_yday=230, tm_isdst=0)

》利用时间元组取值

根据上面的时间元组变量 s_time

可以点出各个数据来

例如

s_time.tm_mon 可得8
s_time.tm_hour 可得15

关于这些tm开头的意义

在这里插入图片描述

时间元组转为时间戳

在这里插入图片描述

time.mktime(时间元组)

例子

import time

now = time.time()
print(now)
s_time = time.localtime(now)  
res = time.mktime(s_time)
print(res)

C:\Users\python_hui\Anaconda3\envs\untitled6\python.exe G:/untitled6/06循环/main.py
1566115391.071008
1566115391.0

Process finished with exit code 0

格式化时间字符串

在这里插入图片描述

格式

time.strftime(格式,时间元组)

time.strftime(格式)

常用的写法

import time
res = time.strftime("%Y-%m-%d-%H-%M-%S")
print(res)

res = time.strptime(“2019-09-18”, “%Y-%m-%d”)
print(res)

结果

C:\Users\python_hui\Anaconda3\python.exe G:/易二/123.py
2019-08-03-13-51-26

Process finished with exit code 0

时间字符串转时间元组

在这里插入图片描述

格式

time.strptime(时间字符串,格式)

代码:

import time

res = time.strptime("2019-09-18", "%Y-%m-%d")
print(res)

附-格式化时间说明

%a:本地(locale)简化星期名称
%A:本地完整星期名称
%b:本地简化月份名称
%B:本地完整月份名称
%c:本地相应的日期和时间表示
%d:一个月中的第几天(01 - 31)
%H:一天中的第几个小时(24 小时制,00 - 23)
%l:一天中的第几个小时(12 小时制,01 - 12)
%j:一年中的第几天(001 - 366)
%m:月份(01 - 12)
%M:分钟数(00 - 59)
%p:本地 am 或者 pm 的相应符
%S:秒(01 - 61)
%U:一年中的星期数(00 - 53 星期天是一个星期的开始)第一个星期天之前的所有天数都放在第 0 周
%w:一个星期中的第几天(0 - 6,0 是星期天)
%W:和 %U 基本相同,不同的是 %W 以星期一为一个星期的开始
%x:本地相应日期
%X:本地相应时间
%y:去掉世纪的年份(00 - 99)
%Y:完整的年份
%z:用 +HHMM 或 -HHMM 表示距离格林威治的时区偏移(H 代表十进制的小时数,M 代表十进制的分钟数)
%Z:时区的名字(如果不存在为空字符)
%%:%号本身
发布了64 篇原创文章 · 获赞 1 · 访问量 821

猜你喜欢

转载自blog.csdn.net/whalecode/article/details/104731019