简介
time库是获取展示时间信息的标准库。
time库功能主要分为3个方面:时间处理,时间格式化,计时
时间处理主要包括4个函数:time.time()、time.gmtime()、time.localtime()、time.ctime()。
时间格式化主要包括3个函数:time.mktime()、time.strftime()、timestrptime()。
计时主要包括2个函数:time.sleep()、time.perf_counter()。
time库处理包括时间戳和struct_time(结构体时间)类型两个重要概念,其中时间戳是一个浮点数,表示从1970年1月1日00:00:00(格林威治时间)开始至今的累计时间,
以秒为单位,小数部分表示秒以内容更精确的时间值。struct_time类型是处理时间的内部数据类型,被更多函数当做输入参数,
主要用于函数间传递时间值。时间戳和struct_time类型可以互相转换。
time.time()
返回系统当前时间戳(正常的生活时间)
import time
time = time.time()
print(time)
-->
1535073565.5588677
time.gmtime()
返回格林威治时间戳对应的struct_time对象
import time
gmt = time.gmtime()
print(gmt)
-->
time.struct_time(tm_year=2018, tm_mon=8, tm_mday=24, tm_hour=1, tm_min=30, tm_sec=38, tm_wday=4, tm_yday=236, tm_isdst=0)
time.localtime()
返回系统当前时间(正常时间)时间戳对应的本地时间的struct_time对象,经过本地时间转化
import time
tlt = time.localtime()
print(tlt)
-->
time.struct_time(tm_year=2018, tm_mon=8, tm_mday=24, tm_hour=9, tm_min=49, tm_sec=23, tm_wday=4, tm_yday=236, tm_isdst=0)
time.ctime()
返回系统当前时间戳对应的易读格式字符串时间(周几,月份,号数,时,分,秒,年)
import time
ctime = time.ctime()
print(ctime)
-->
Fri Aug 24 09:51:24 2018
time.mktime(t)
将struct_time对象变量t转换成时间戳
t代表时间的struct_time对象变量
# 先获取当前系统时间的strucr_time对象
ltl = time.localtime()
mktime = time.mktime(ltl)
-->
1535075985.0
time.strftime(format, t)
根据format格式。打印输出时间t
format:由格式控制符组成的格式定义字符串
t:代表时间的struct_time对象变量
import time
tlt = time.localtime()# time.struct_time(tm_year=2018,
# tm_mon=8, tm_mday=24, tm_hour=10, tm_min=48,
# tm_sec=43, tm_wday=4, tm_yday=236, tm_isdst=0)
strf = time.strftime('%Y-%m-%d %H:%M:%S', tlt)
print(strf)
-->
2018-08-24 10:49:51
format格式控制符:
%Y 年份 0001~9999
%m 月份 01~12
%B 月名 January~December
%b 月名缩写 Jan~Dec
%d 日期 01~31
%A 星期 Monday~Sunday
%a 星期缩写 Mon~Sun
%H 小时(24h) 00~23
%I 小时(12h) 01~12
%p 上/下午 AM,PM
%M 分钟 00~59
%S 秒 00~59
time.strptime(string, format)
根据format格式定义,解析字符串string, 返回struct_time类型时间变量
string:时间的字符串
format:由格式控制符组成的格式定义字符串
import time
struct_time = time.strptime("30 Nov 00", "%d %b %y")
print(struct_time)
-->
time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)
import time
tt = '2019-9-05'
t1 = time.strptime(tt, '%Y-%m-%d')
print(t1)
-->
time.struct_time(tm_year=2019, tm_mon=9, tm_mday=5, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=248, tm_isdst=-1)
time.sleep(secs)
将当前程序挂起secs秒,即暂停,休眠
secs:表示时间的数值,整数或者浮点数。
import time
time.sleep(5)
print('开始')
-->
控制台等了5以后,才显示‘开始’
time.perf_counter()
返回一个代表时间的精确的浮点数,两次或多次调用,用其差值来计时
该函数是一个用于精确计时的函数,单次调用返回值没有意义,多次调用间差值用于计时,相比采用时间戳更为准确。该函数是系统提供的最精确的计时方法
t1 = time.perf_counter()
time.sleep(5)
t2 = time.perf_counter()
print(t2 - t1)
-->
5.000081919965048
time.asctime()
接受时间元组并返回一个可读的形式为"Tue Dec 11 18:07:14 2008"(2008年12月11日 周二18时07分14秒)的24个字符的字符串。
asctime()方法语法:
time.asctime([t]))
例如
import time
t = time.localtime()
print "time.asctime(t): %s " % time.asctime(t)
==>
time.asctime(t): Tue Feb 17 09:42:58 2009
手机扫一扫
移动阅读更方便
你可能感兴趣的文章