参考链接: Python中的时间函数 1(time(),ctime(),sleep()…)

一、时间表示的几种形式 

1.时间戳 2.字符串时间 3.元组类型的时间 

 

结果:  

二、常用时间的转换 

1、把元组时间转换为时间戳  

 2、把元组时间转化为字符串时间 

 

 3、将时间戳类型的时间转换为字符串时间 

 

 4、将时间戳类型转换为元组类型的时间 

 

 

三、拓展时间模块datetime 

导入部分 

import os
from datetime import date
from datetime import datetime
from datetime import timedelta

显示时间 

print(date.today())
print(datetime.now())

结果:  1、如何计算三天前的时间和三天后的时间 

d = date.today()
delta = timedelta(days=3)
print(d + delta)
print(d - delta)

 

 2、如何计算两个小时前的时间和两个小时后的时间 

now_hour = datetime.now()
delta = timedelta(hours=2)
print(now_hour - delta)
print(now_hour + delta)

 

3、返回两个时间 想计算两个时间之间的时间差 

now_time = datetime.now()
print(now_time)
pwd_time = os.path.getmtime('/etc/passwd')
print(pwd_time)
pwd_time_obj = datetime.fromtimestamp(pwd_time)
print(pwd_time_obj)
dalta = now_time - pwd_time_obj
print(delta)

 

 

四、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.获取当前主机信息 包含操作系统名 主机名 内核版本 硬件架构 2.获取开机时间和开机时长 3.获取当前登陆的用户 代码: