time模块
1.转换时间为元组
import time
s = '2019-7-14'
print(time.strptime(s,'%Y-%m-%d'))
s_time = '20:00:00'
print(time.strptime(s_time,'%H:%M:%S'))
2.把元组的时间转换为时间戳
import time
tuple_time = time.localtime()
print(tuple_time)
print(time.mktime(tuple_time)) #把元组的时间转换为时间戳,是Linux系统的时间
3.把元组时间转换为字符串时间
import time
tuple_time = time.localtime()
print(tuple_time)
print(time.strftime('%m-%d',tuple_time)) #把元组时间转换为字符串时间
print(time.strftime('%Y-%m-%d',tuple_time))
print(time.strftime('%F',tuple_time))
print(time.strftime('%T',tuple_time))
4.把时间戳类型转换为字符串时间
import os
import time
pwd_time = os.path.getctime('/etc/passwd') #把时间戳类型转换为字符串时间
print('pwd_time',pwd_time)
print(time.ctime(pwd_time))
5.将时间戳转换为元组
import os
import time
pwd_time = os.path.getctime('/etc/passwd') #将时间戳转换为元组
print(time.localtime(pwd_time))
6.元组转换为时间戳
import time
tuple_time = time.localtime()
print(tuple_time) #元组
print(time.mktime(tuple_time)) #元组转换为时间戳
datetime模块
1.相关模块导入
import os
from datetime import date
from datetime import datetime
from datetime import timedelta
2.计算几天前的时间
在shell中:
date +%F
date +%F -d -2day
date +%F -d +2day
import os
from datetime import date
from datetime import datetime
from datetime import timedelta
d = date.today()
delta = timedelta(days=9)
print(d + delta)
print(d - delta)
3.计算几个小时前或后的时间
import os
from datetime import date
from datetime import datetime
from datetime import timedelta
now_time = datetime.now()
delta = timedelta(hours=3)
print(now_time)
print(now_time + delta)
print(now_time - delta)
4.显示此时距离某一文件上次修改的时长
import os
from datetime import date
from datetime import datetime
from datetime import timedelta
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)
delta = now_time - pwd_time_obj
print(delta)
练习
需求:
1.获取当前主机信息(操作系统名、主机名、内核版本、硬件架构)
2.获取开机时间和开机时长
3.获取当前登录用户
代码如下:
import os
import psutil
from datetime import datetime
print('主机信息'.center(50,'*'))
info = os.uname()
# print(info)
print(
"""
操作系统:%s
主机名称:%s
内核版本:%s
硬件架构:%s
""" %(info.sysname,info.nodename,info.release,info.machine)
)
print('开机信息'.center(50,'*'))
boot_time = psutil.boot_time() #返回一个时间戳
boot_time_obj = datetime.fromtimestamp(boot_time)
# print(boot_time_obj)
#当前时间
now_time = datetime.now()
delta_time = datetime.now()
delta_time1 = now_time - boot_time_obj
print('开机时间:',boot_time_obj)
print('当前时间:',str(now_time).split('.')[0])
print('开机时长:',str(delta_time1).split('.')[0])
print('当前登录用户'.center(50,'*'))
login_user = psutil.users()[0]
print(login_user.name)