日常接口测试中需要大量的操作文件,譬如:用户登录信息、数据库信息等等。了解下方10个文件操作库,可以快速提升在工作中的效率。
os:提供了与操作系统交互的功能,包括文件和目录操作、进程管理等。示例代码参考用法:
import os# 检查文件是否存在if os.path.exists('file.txt'): print('File exists')# 获取文件大小file_size = os.path.getsize('file.txt')# 删除文件os.remove('file.txt')
pathlib:提供了更简洁和面向对象的方式来操作文件和目录路径。示例代码参考用法:
from pathlib import Path# 检查文件是否存在if Path('file.txt').exists(): print('File exists')# 获取文件大小file_size = Path('file.txt').stat().st_size# 删除文件Path('file.txt').unlink()
shutil:提供了高级的文件操作功能,如复制、移动、删除目录等。示例代码参考用法:
import shutil# 复制文件shutil.copy('source.txt', 'destination.txt')# 移动文件shutil.move('source.txt', 'destination.txt')# 删除目录及其内容shutil.rmtree('directory')
glob:提供了用于文件名模式匹配的功能,用于查找符合特定模式的文件。示例代码参考用法:
import glob# 查找所有.txt文件txt_files = glob.glob('*.txt')# 查找所有在子目录中的.py文件py_files = glob.glob('**/*.py', recursive=True)
zipfile:提供了对ZIP压缩文件的创建、读取和解压缩的功能。示例代码参考用法:
import zipfile# 创建ZIP压缩文件with zipfile.ZipFile('archive.zip', 'w') as zip: zip.write('file.txt')# 解压缩ZIP文件with zipfile.ZipFile('archive.zip', 'r') as zip: zip.extractall('destination_folder')tarfile:提供了对TAR压缩文件
tarfile:提供了对TAR压缩文件的创建、读取和解压缩的功能。示例代码参考用法:
import tarfile# 创建TAR压缩文件with tarfile.open('archive.tar.gz', 'w:gz') as tar: tar.add('file.txt')# 解压缩TAR文件with tarfile.open('archive.tar.gz', 'r:gz') as tar: tar.extractall('destination_folder')
csv:提供了对CSV文件的读写操作的功能,用于处理逗号分隔值文件格式。示例代码参考用法:
import csv# 读取CSV文件with open('data.csv', 'r') as file: reader = csv.reader(file) for row in reader: print(row)# 写入CSV文件with open('data.csv', 'w') as file: writer = csv.writer(file) writer.writerow(['Name', 'Age']) writer.writerow(['John', 30]) writer.writerow(['Alice', 25])
json:提供了JSON数据的编码和解码功能,用于处理JSON格式的文件和数据。示例代码参考用法:
import json# 读取JSON文件with open('data.json', 'r') as file: data = json.load(file) print(data)# 写入JSON文件data = {'name': 'John', 'age': 30}with open('data.json', 'w') as file: json.dump(data, file)
configparser:提供了对INI文件的读写操作的功能,用于处理配置文件。示例代码参考用法:
import configparser# 读取配置文件config = configparser.ConfigParser()config.read('config.ini')value = config.get('Section', 'Option')# 写入配置文件config = configparser.ConfigParser()config['Section'] = {'Option': 'Value'}with open('config.ini', 'w') as file: config.write(file)
logging:提供了灵活且可配置的日志记录功能,用于记录应用程序运行时的事件和信息。示例代码参考用法:import logging# 配置日志记录器logging.basicConfig(filename='app.log', level=logging.INFO)# 记录日志消息logging.debug('This is a debug message')logging.info('This is an info message')logging.warning('This is a warning