time()函数

    最近发现,python中的time函数又不会了。老是混淆,要找很多资料才可以回忆起来。现在整理一下,作为备忘录。同时也分享给初学者。除了下面的功能,time函数经常会被用来作为程序休眠-time.sleep(5).

一、基本概念
  1、时间戳
import time

#返回的是时间戳,从1970年到目前系统所经历的时间(秒)
t=time.time()
print(t)

运行结果:
1596099195.7904053

  2、时间元组

时间函数的元组格式,用9个格式来表示

二、时间格式

时间格式化是非常常用的一个功能,不管是从字符串到struct_time、date、datetime,还是从struct_time、date、datetime到字符串都需要用到。

格式化主要涉及到2个函数:
strftime:str表示字符串,f是format,time是时间,就是时间格式化为字符串
strptime:str表示字符串,p是parse,time是时间,就是字符串解析为时间

time和datetime都有这2个函数,后面会介绍,下面先看一下格式化的含义。

格式含义
%y 两位数的年份表示,00-99
%Y 四位数的年份表示,0000-9999
%m 月份,01-12
%d 日期,0-31
%H 24小时制小时数,0-23
%I 12小时制小时数,01-12
%M 分钟,00-59
%S 秒,00-59
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地日期表示和时间表示
%j 第几天,001-366
%p 本地A.M\P.M
%U 第几周,00-53,星期天为星期的开始
%W 第几周,00-53,星期一为星期的开始
%w 星期几,0-6,星期天为星期的开始
%x 本地日期
%X 本地时间
%Z 当前时区的名称
%% %符合,因为被当做转义字符

三、不同类型之间的时间函数相互转换

   1、将时间戳转换成时间元组

import time

# UTC时间、将时间戳转化成时间元组,不传入时间表示默认显示从1970年到目前系统的时间
tuple=time.gmtime(time.time())
print(tuple)
#系统时间时间元组
tuple1=time.localtime()
print(tuple1)

运行结果:
 time.struct_time(tm_year=2020, tm_mon=7, tm_mday=30, tm_hour=9, tm_min=38, tm_sec=40, tm_wday=3, tm_yday=212, tm_isdst=0)

  time.struct_time(tm_year=2020, tm_mon=7, tm_mday=30, tm_hour=17, tm_min=38, tm_sec=40, tm_wday=3, tm_yday=212, tm_isdst=0)

   2、将时间元组转成时间戳

import time
tuple2=time.localtime()
# 将时间元组转成时间戳
time2=time.mktime(tuple2)
print(time2)
运行结果:
1596103539.0

  3、将时间元组转换成字符串

import time
# 将时间元组转换成格式化的字符串
t=time.strftime("%Y_%m_%d",time.localtime())
print(t)

运行结果:
2020_07_30


import time
#不传入参数默认传入localtime()
t=time.strftime("%Y_%m_%d")
print(t)
运行结果:
2020_07_31
 

   4、将格式化的字符串转换成时间元组

import time
# 将格式字符串转换为时间戳
a = "2020-01-01 11:59:59"
str2TT = time.strptime(a, "%Y-%m-%d %H:%M:%S")
print(str2TT)
运行结果:
time.struct_time(tm_year=2020, tm_mon=1, tm_mday=1, tm_hour=11, tm_min=59, tm_sec=59, tm_wday=2, tm_yday=1, tm_isdst=-1)

 

posted on 2020-07-30 18:10  smileBB  阅读(1042)  评论(0编辑  收藏  举报