OS模块
import os
# 1.返回操作系统类型
# 返回值:posix是linux操作系统
# 返回值:nt 是windows操作系统
print(os.name)
print('Linux' if os.name == 'posix' else 'Windows')
# 2.返回操作系统的详细信息
info = os.uname()
print(info)
print(info.sysname)
print(info.nodename)
# 3.系统的环境变量
print(os.environ)
print(os.environ.get('PATH'))
# 4.判断是否是绝对路径
print(os.path.isabs('/tmp/fff'))
print(os.path.isabs('data.txt'))
# 5.生成绝对路径
print(os.path.abspath('hello.png'))
print(os.path.join(os.path.abspath('.'),'hello'))
print(os.path.join('/home/kiosk','python.jpg'))
# 6.获取目录名和文件名
filename = '/var/ftp/pub/20191126/day06/hello.png'
print(os.path.basename(filename))
print(os.path.dirname(filename))
# 7.创建目录
# mkdir mkdir -p
# os.mkdir('img')
# os.makedirs('img/dir1/dir2')
# 不能递归删除目录
# os.rmdir('img')
# 8.创建文件 删除文件
# os.mknod('ook.txt')
#os.remove('ook.txt')
# 9.文件的重命名
# os.rename('data.txt','data2.txt')
# 10.判断文件或目录是否存在
print(os.path.exists('datadsada.txt'))
# 11.分离后缀名和文件名
print(os.path.splitext('hello.jpg'))
# 12.将目录名和文件名分开
print(os.path.split('/tmp/passwd2313213'))
时间模块
time
时间表示的几种类型
- 1.时间戳
- 2.字符串时间
- 3.元组类型的时间
import os
import time
# 1.时间戳
print(time.time())
#1575895126.0245535
# 2.字符串时间
print(time.ctime())
#Mon Dec 9 20:38:46 2019
# 3.元组时间
print(time.localtime())
#time.struct_time(tm_year=2019, tm_mon=12, tm_mday=9, tm_hour=20, tm_min=38, tm_sec=46, tm_wday=0, tm_yday=343, tm_isdst=0)
info = time.localtime()
print(info)
print(info.tm_yday) #一年的第多少天
print(info.tm_mon) #月份
#time.struct_time(tm_year=2019, tm_mon=12, tm_mday=9, tm_hour=20, tm_min=38, tm_sec=46, tm_wday=0, tm_yday=343, tm_isdst=0)
#343
#12
时间类型转换
import time
import os
# 把元组时间转换为时间戳
tuple_time = time.localtime()
print(tuple_time)
print(time.mktime(tuple_time))
# 把元组时间转换为字符串时间
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))
# 将时间戳类型的时间转换成字符串时间
pwd_time = os.path.getctime('/etc/passwd')
print('pwd_time',pwd_time)
print(time.ctime(pwd_time))
# 将时间戳转换为元组
pwd_time = os.path.getctime('/etc/passwd')
print(time.localtime(pwd_time))
# 将元组时间转换为时间戳
tuple_time = time.localtime()
print(time.mktime(tuple_time))
datetime
import os
from datetime import date
from datetime import datetime
from datetime import timedelta
print(date.today()) #2019-12-09
print(datetime.now()) #2019-12-09 20:43:35.590462
# 如何计算三天前的时间和三天后的时间
d = date.today()
delta = timedelta(days=3)
print(d + delta) #2019-12-12
print(d - delta) #2019-12-06
# 如何计算两个小时前的时间和两个小时后的时间
now_hour = datetime.now()
delta = timedelta(hours=2)
print(now_hour - delta) #2019-12-09 18:43:35.590486
print(now_hour + delta) #2019-12-09 22:43:35.590486
# 返回两个时间,想计算两个时间之间的时间差
now_time = datetime.now()
print(now_time) #2019-12-09 20:43:35.590497
pwd_time = os.path.getmtime('/etc/passwd')
print(pwd_time) #1574262247.737463
pwd_time_obj = datetime.fromtimestamp(pwd_time)
print(pwd_time_obj) #2019-11-20 23:04:07.737463
delta = now_time - pwd_time_obj
print(delta) #18 days, 21:39:27.853034