python常用模块
内置模块:
1、os模块----->是与操作系统交互的一个接口
2、sys模块----->是与python解释器交互的一个接口
3、datetime,date,time模块----->时间模块
4、random模块----->随机数
5、re模块----->正则表达式
6、copy----->复制
7、unittest模块----->单元测试框架
8、configparser模块----->读取ini文件
9、json模块----->json格式转换
10、logging模块----->日志
第三方模块:
11、pymysql模块----->连接mysql
12、selenium模块----->web自动化框架
13、appium模块----->app自动化框架
14、pytest模块----->测试框架
15、requests模块----->用于接口测试
16、yaml模块----->读取yaml文件
17、openpyxl模块----->读取excel文件
18、ddt模块----->数据驱动
19、yagmail模块----->发送邮件
20、suds模块----->SOAP协议的接口测试
一个个摆上架:
1、import os
os.getcwd()----->返回当前进程的工作目录
os.chdir('..')----->切换工作目录
os.mkdir(r'D:\abc')----->创建空目录
os.rmdir(r'D:\abc')----->删除空目录
os.remove('test.txt')----->删除文件(注意路径)
os.rename('原文件', '新文件')----->重命名文件/目录(注意路径)
os.path.abspath(path)----->返回绝对路径
PATH = lambda p:os.path.abspath(os.path.join(os.path.dirname(__file__), p))
PATH(file_path)
#定义一个PATH函数:file_path为文件的相对路径,PATH返回该文件的绝对路径
os.path.dirname(__file__)----->返回文件所在目录的路径
os.path.basename(path)----->返回文件名
os.path.split(path)----->路径分割, 返回元组(dirname, basename)
os.path.join(path1[, path2[, ...]])----->路径拼接,把路径下的目录和文件名合成一个路径
os.path.isdir(path)----->判断目录是否存在
os.path.isfile(path)----->判断文件是否存在
os.path.exists(filename)----->判断目录 / 文件是否存在---à返回True / False
os.listdir()----->返回该目录下的文件
os.system()----->在当前python程序中执行其他程序
其他程序不能是图形界面程序,例如QQ、微信;
只能是命令行程序,例如cmd命令、python文件、bat批处理文件、exe可执行文件。
2、import sys
sys.version----->Python的版本
sys.version_info----->Python的版本信息
sys.platform----->Python的操作系统平台(win32代表windows,注意:此处32不是位数)
sys.path----->返回当前可以导入的python模块的路径(列表)
sys.exit(0)----->程序结束(0表示正常结束;1表示异常结束)
3、import time
time.time()----->返回从1970年1月1日0时0分0秒到当前的秒数
time.strftime('%Y-%m-%d')----->返回指定格式的时间
time.localtime()----->返回当前系统的时间
time.sleep(2)----->程序休眠2秒
4、import random
random.randint(1, 5)----->1-5中随机返回一个数
random.uniform(1, 5)
random.random()
random.choice(['tom','jack','mary'])----->随机返回一个元素
random.choice('hello')----->随机返回一个字符
random.shuffle()----->所有元素随机排序
5、import re
1)查找模式
re.match()----->匹配的子字符必须在字符串的开始位置,不在则返回None
re.search()----->匹配的子字符在字符串内即可,返回第一个
re.findall()----->匹配的子字符在字符串内即可,返回全部
2)替换功能
re.sub()
3)匹配
贪婪模式VS非贪婪模式
re.findall()
6、import copy
浅复制copy.copy()、深复制copy.deepcopy(),复制后的第一层都不可变。
浅复制:复制一个对象,里面可变类型(如列表、字典)指向原来地址, 即复制的对象随原对象改变;
深复制:复制一个对象,里面可变类型(如列表、字典)指向新的地址, 即复制的对象不随原对象改变。