python--时间模块

时间表示的几种类型

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

import os
import time
from datetime import  date
from datetime import  time
from datetime import  datetime

 1). 时间戳
print(time.time())

 2). 字符串的时间
print(time.ctime())

 3). 元组类型的时间
print(time.localtime())
info = time.localtime()
print(info.tm_year)
print(info.tm_yday)

如何对于不同时间类型的转换

#将时间戳类型转换为字符串的时间
pwd_time = os.path.getmtime('/etc/passwd')
print(pwd_time)
print("文件修改时间: ", time.ctime(pwd_time))

#将时间戳类型转换为元组类型
print(time.localtime(pwd_time))

#将元组类型时间转换为时间戳
tuple_time = time.localtime()
print(time.mktime(tuple_time))

#将元组的时间转换为字符串时间
tuple_time = time.localtime()
print(time.strftime('%Y-%m-%d', tuple_time))
print(time.strftime('%Y-%m-%d %H:%M:%S', tuple_time))

#将字符串的时间转换为元组
mytime = "2019/01/15"
print(time.strptime(mytime, '%Y/%m/%d'))

计算时间间隔

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

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

#如何计算三天前的时间和三天后的时间
d = date.today()
delta = timedelta(days=3)
print(d + delta)
print(d - delta)

#如何计算两个小时之前的时间? 两个小时之后的时间
now_hour = datetime.now()
delta = timedelta(hours=2)
print(now_hour - delta)
print(now_hour + delta)
#返回两个时间, 想计算两个时间之间的时间差
now_time = datetime.now()  # 对象
pwd_time = os.path.getmtime('/etc/passwd')  # 时间戳
#将时间戳转换为对象
pwd_time_obj = datetime.fromtimestamp(pwd_time)
delta = now_time - pwd_time_obj
print(delta)
fromtimestampfromtimestamp

在这里插入图片描述

应用实例-系统监控

需求:
1.获取当前主机信息, 包含操作系统名, 主机名, 内核版本, 硬件架构等
2.获取开机时间和开机时长;
3.获取当前登陆用户

import os
import psutil
from datetime import  datetime
print("主机信息".center(50, '*'))
info = os.uname()
print("""
    操作系统: %s
    主机名: %s
    内核版本: %s
    硬件架构: %s
""" % (info.sysname, info.nodename, info.release, info.machine))


print("开机信息".center(50, '*'))
boot_time = psutil.boot_time()   # 返回时间戳
#将时间戳转换为datetime类型的时间2019-01-15 08:59:01
boot_time_obj = datetime.fromtimestamp(boot_time)
#print(type(boot_time_obj))
now_time = datetime.now()
delta_time = now_time - boot_time_obj
#print(type(delta_time))
print("开机时间: ",  boot_time_obj)
print("当前时间: ", str(now_time).split('.')[0])   
 #str是为了将对象转换为字符串, 实现分离;
 #split分离是为了去掉毫秒
print("开机时长: ", str(delta_time).split('.')[0])    
#split分离是为了去掉毫秒


print("当前登陆用户".center(50, '*'))
login_users = psutil.users()
#集合生成式实现去重
print({user.name for user in login_users})


info = psutil.users()[0]
print(info)
print(type(info))

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值