【Volta】自动化测试-python基础1-文件操作/OS模块/time模块/calendar模块
1、文件读写
(1)、打开文件 open()
with语句,在处理文件过程中不管是否发生异常,都能保证with语句执行完毕后关闭文件
with open('info.txt','r+') as f:
r=f.read()
print(r)
(2)、读文件 read()
read(n) 读写n个长度字符
readlines() 读取所有文件
(3)、写文件 write()
with open('info.txt','r+') as f:
f.write('abcde')
2、OS 模块
提供了丰富的方法来处理文件和目录
(1)、常用方法
a、创建目录
def mk_dir(path):
os.mkdir(path)
print(f'创建目录:{path}')
path=r'F:\python_basic\a'
mk_dir(path)
b、创建多级目录
def mk_dirs(path):
os.makedirs(path)
print(f'创建多级目录:{path}')
path=r'F:\python_basic\a1\a2\a3'
mk_dirs(path)
c、删除目录
def del_dir(path):
'''删除空目录'''
os.rmdir(path)
print(f'删除目录{path}成功')
path=r'F:\python_basic\a1\a2\a3'
del_dir(path)
import shutil
def shut_dir(path):
'''删除非空目录'''
shutil.rmtree(path)
print(f'删除目录{path}成功')
path=r'F:\python_basic\a1\a2'
shut_dir(path)
d、重命名文件及目录
def rename_dir(old,new):
'''重命名'''
os.rename(old,new)
print(f'重命名文件: {new}')
pass
old=r'F:\python_basic\a1'
new=r'F:\python_basic\a1\AA'
rename_dir(old,new)
e、文件权限
os.access(path,mode) 验证路径的文件是否与mode一致,返回布尔值
Mode:os.F_OK(是否存在)、os.R_OK(可读)、os.W_OK(可写)、os.X_OK(可执行)、os.F_OK(是否存在)、
new=r'F:\python_basic\AA'
va=os.access(new,mode=os.F_OK)
print(va)
f、修改文件权限
权限值:【r-读、w-写、x-执行】
用户权限:【OTH-其他用户\USR-用户\GRP-组】
new=r'F:\python_basic\AA'
os.chmod(path=new,mode=stat.S_IRWXU)
3、路径操作
a、路径判断
path=r'F:\python_basic\info.txt'
# 是否为目录
a=os.path.isdir(path)
print(a)
# 是否为文件
b=os.path.isfile(path)
print(b)
b、打印当前路径
import os
def get_path():
pa=os.getcwd()
print(pa)
pass
get_path()
c、获取路径
# 获取绝对路径
path=r'F:\Auto_test_Mashang\python_basic\class_05\info.txt'
print(os.path.abspath(path))
# 获取路径的目录
print('目录名称:',os.path.dirname(path))
# 判断路径是否存在
print('是否存在:',os.path.lexists(path))
d、路径分割
# 路径的分割 把目录及文件进行分割,返回一个元组
path=r'F:\Auto_test_Mashang\python_basic\class_05\info.txt'
v1=os.path.split(path)
print(v1)
p0=v1[0]
print(f'获取当前的目录:{p0}')
e、路径的拼接
# 路径的拼接
p1=r'F:\Auto_test_Mashang\python_basic\class_05'
p2=r'test.txt'
path1=os.path.join(p1,p2)
print(path1)
open(path1,'w+')
4、time 模块
时间戳:指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)
时间元组:年、月、日、时、分、秒,一周的第几日、一年的第几日、{<1:夏令时间;0:非夏令时;-1:未知}

import time
print('时间元组',time.localtime())
print('时间戳',time.time())
t1=time.localtime(1641819556)
print('时间戳转换为元组:',t1) #
print('元组转换为时间戳:',time.mktime(t1))
# 时间格式化为字符串
str_time = time.strftime('%Y-%m-%d %H-%M-%S',time.localtime())
print(str_time)
# 获取单个值,切片
print(time.localtime()[0])
s=time.localtime()
for i in s:
print(i,end='')
5、calendar模块
时间日历模块
import calendar
print("获取年历: ",calendar.calendar(2022))
print("获取某年某月的日历:",calendar.month(2022,1))
print('是否闰年:',calendar.isleap(2020))
print('返回给定日期的日期码:',calendar.weekday(2022,1,17)) # 从0-6分别为周一至周日

浙公网安备 33010602011771号