time库

  1. 简介
  2. 返回系统当前时间戳(正常的生活时间)
  3. 返回格林威治时间戳对应的struct_time对象
  4. 本地时间的struct_time对象
  5. 当前时间戳对应的易读格式字符串时间(周几,月份,号数,时,分,秒,年)
  6. 将struct_time对象变量t转换成时间戳
  7. 根据format格式。打印输出时间t
  8. format格式控制符
  9. 根据format格式定义,解析字符串string, 返回struct_time类型时间变量
  10. 将当前程序挂起secs秒,即暂停,休眠
  11. 精确的浮点数,两次或多次调用,用其差值来计时
  12. 接受时间元组并返回一个可读的形式为"Tue Dec 11 18:07:14 2008"

简介

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()
# 将struct_time转换成时间戳对象
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

原文地址:https://www.cnblogs.com/pywjh/p/9528685.html