一、Time模块包含的函数
Time模块包含了以下内置的函数,既有时间处理的,也有转换时间格式的:
time常用函数 | 功能描述 |
---|---|
time.asctime([t]) | 将时间元组或 struct_time 转换为时间字符串,如果不指定参数 t,则默认转换当前时间 |
time.ctime([secs]) | 将秒数代表的时间(格林威治时间)转换为时间字符串 |
time.gmtime([secs]) | 将以秒数代表的时间转换为 struct_time 对象。如果不传入参数,则使用当前时间 |
time.localtime([secs]) | 元组时间。将以秒数代表的时间转换为代表当前时间的 struct_time 对象。如果不传入参数,则使用当前时间 |
time.mktime(t) | 它是 localtime 的反转函数,用于将 struct_time 对象或元组代表的时间转换为从 1970 年 1 月 1 日 0 点整到现在过了多少秒 |
time.perf_counter() | 返回性能计数器的值。以秒为单位 |
time.process_time() | 返回当前进程使用 CPU 的时间,以秒为单位 |
time.sleep(secs) | 暂停 secs 秒,什么都不干 |
time.strftime(format[, t]) | 将时间元组或 struct_time 对象格式化为指定格式的时间字符串。如果不指定参数 t,则默认转换当前时间 |
time.strptime(string[, format]) | 将字符串格式的时间解析成 struct_time 对象 |
time.time() | 返回从 1970 年 1 月 1 日 0 点整到现在过了多少秒,时间戳 |
time.timezone | 返回本地时区的时间偏移,以秒为单位 |
time.tzname | 返回本地时区的名字 |
altzone()
参数:无
返回值:返回格林威治西部的夏令时地区的偏移描述。如果该地区在格林威治东部会返回负值(如西欧,包括美国)
语法:
import time
print(time.altzone)
-28800
asctime()
参数:9个元素的元组或者通过函数gmtime()或localtime()返回的时间值
返回值:返回一个可读的形式的24个字符的字符串。
语法:
import time
print(time.asctime())
Sat Sep 21 06:20:56 2019
clock()
参数:无
返回值:
该函数有两个功能:
在第一次调用的时候,返回的是程序运行的实际时间;
以第二次之后的调用,返回的是自第一次调用后,到这次调用的时间间隔
语法:
print(time.clock())
for i in range(1, 100):
print(i)
print(time.clock())
输出结果:
0.0
6.6986723828671e-05
ctime()
参数: 要转换为字符串时间的秒数
返回值:无
语法:
import time
print(time.ctime())
Sat Sep 21 06:33:15 2019
gmtime()
参数:转换为time.stryct_time类型的对面的秒数
返回值:无
语法:
print( time.gmtime())
time.struct_time(tm_year=2019, tm_mon=9, tm_mday=20, tm_hour=22, tm_min=26, tm_sec=7, tm_wday=4, tm_yday=263, tm_isdst=0)
localtime()
参数:转换为time.struct_time类型的对面的秒数
返回值:无
语法:
import time
方式一:
print(time.localtime())
time.struct_time(tm_year=2019, tm_mon=9, tm_mday=21, tm_hour=6, tm_min=28, tm_sec=42, tm_wday=5, tm_yday=264, tm_isdst=0)
方式二:
info = time.localtime()
print(info)
print(info.tm_year)
print(info.tm_mon)
sleep()
参数:推迟执行的秒数
返回值:无
语法:
import time
print(time.ctime())
time.sleep(5)
print(time.ctime())
输出结果:
Sat Sep 21 06:29:53 2019
Sat Sep 21 06:29:58 2019
time()
参数:无
返回值:返回当前时间的时间戳(1970纪元后经过的浮点秒数)
import time
print ("time.time(): %f " % time.time())
输出结果:
time.time(): 1569018728.271377
二、常用的时间转换
1、把元组时间转换为时间戳
import time
import os
tuple_time = time.localtime() #获取元组时间
print(time.mktime(tuple_time)) #将元组时间转换为时间戳
2、把元组时间转化成字符串时间
tuple_time = time.localtime() #获取当前元组时间
print(time.strftime('%d-%m',tuple_time)) #将元组时间转换为字符串时间,输出 天-月 格式
print(time.strftime('%Y/%m/%d',tuple_time))#输出 年/月/日 格式
print(time.strftime('%T',tuple_time)) #输出 小时:分钟:秒 格式
print(time.strftime('%F',tuple_time)) #输出 年-月-日 格式
3、将时间戳类型的时间转换成字符串时间
pwd_time = os.path.getctime('/etc/passwd') #获取指定文件上次修改的时间戳
print(time.ctime(pwd_time)) #将时间戳转换为字符串时间
4、将时间戳转换为元组
pwd_time = os.path.getctime('/etc/passwd') #获取指定文件上次修改的时间戳
print(time.localtime(pwd_time)) #将时间戳转换为元组时间
5、将元组时间转换为时间戳
tuple_time = time.localtime() #获取元组时间
print(time.mktime(tuple_time)) #将元组时间转换为时间戳