python
殷殷殷先森丶
亡羊补牢不如未雨绸缪!
展开
-
python 读写yaml
学习目标:读、写yaml文件yaml文件格式:提示:请看下方代码!auth.login: data: name: '18888888883' password: jnyj123456 url: https://XXXX-api-XXXX.zje.com/auth/loginheaders: Accept: '*/*' Accept-Encoding: gzip, deflate, br Accept-Language: zh-CN,zh;q=0.9 Conn原创 2022-03-18 20:56:21 · 1403 阅读 · 1 评论 -
python tkinter弹窗的输入输出
代码如下:from tkinter import *tk = Tk()tk.title('test')tk.geometry('350x350')# 输入框1now_nub1 = Label(tk, text='1、请输入数字:')now_nub1.grid(row=1, column=1, sticky='E')now_bok1 = Spinbox(tk, values=[i for i in range(1, 999999)], width=5)now_bok1.grid(ro原创 2021-09-23 16:02:15 · 3645 阅读 · 0 评论 -
python 使用tkinter写界面、及使用messagebox写弹窗
1、grid 布局说明: '''参数说明: sticky:在插件正常尺寸下,分配单元中多余的空间(如果没有声明属性,默认插件居中) NE:靠右上方 SE:靠右下方 NW:靠左上方 N:靠上方 E:靠右方 S:靠下方 W:靠左方 N+S:在垂直方向上延伸插件,并保持水平居中 E+W:在水平方向上延伸插件,并保持垂直居中 N+W:在水平和.原创 2021-09-14 19:53:18 · 2222 阅读 · 0 评论 -
python 内置函数
前言:今天主要统计一下,每个类型的内置函数,及一些内置函数的用法!1、字符串(string)内置函数limit = 'hello china'print(limit.count('l')) # 统计字符在字符串中出现的次数print(limit.center(20, '-')) # 设置字符传居中,两边以"-"来填满print(limit.capitalize()) # 把字符串首字母变为大写print(limit.endswith('l', 0, 6)) # 判断字符串以某字符结原创 2021-04-19 14:36:59 · 230 阅读 · 2 评论 -
python 深浅拷贝
1、浅拷贝浅拷贝:是只拷贝数据的第一层数据如:lis = [['你好', '世界'], 1, 3]copy = lis.copy() # 拷贝 lis 内容print(copy)# 修改第一层数据copy[1] = 666# 这里可以看到,在浅拷贝时,修改第一层的内容时,是不会影响到原数据的# 在lis中 1和3 属于第一层的数据, '你好', '世界' 属于第二层的数据print(copy) print(lis)'''结果: [['你好', '世界'],原创 2021-04-13 11:14:41 · 77 阅读 · 0 评论 -
python 装饰器
1、@classmethod说明:1、classmethod是用来指定一个类的方法为类方法2、cls通常用作类方法的第一参数 跟self有点类似3、类方法的一个主要用途就是定义多个构造器。它接受一个class 作为第一个参数(cls)。作用:classmethod装饰器用于装饰类方法,怎么说呢?通常我们想要调用类中的某个方法时,需要先将其实例化,然后利用实例调用该方法,但是如果我们想要用类(而不是实例)直接调用方法,那就需要使用classmethod装饰器了例:@classmethodd原创 2021-04-09 17:29:33 · 126 阅读 · 0 评论 -
python 修饰器
1、无参数在我理解,这里其实就是把test继承到了dom内,然后在dom内执行了test代码:def dom(fun): # fun == test() print(f'''执行{fun.__name__}开始!''') fun() print(f'''执行结束!''') fun()@domdef test(): print('这里是test内容')执行结果:执行test开始!这里是test内容执行结束!这里是test内容嵌套:def原创 2021-04-07 11:04:08 · 78 阅读 · 0 评论 -
python 提取返回值的几种写法
返回格式{ "code":1, "data":{ "accessToken":"eyJhbGciOiJIUzI1NiJ9.eyJkZXB0X2NvZGUI6MzMw", "areaManage":0, "cityManage":1, "deptCode":"28", "deptId":28, "deptName":"\u676D\u5D", "id":1694, "idCard":"", "isAdmin":0, "isCaptain":0, "level"原创 2021-03-15 14:38:46 · 1414 阅读 · 7 评论 -
python 变量的合并方法
list 合并第一种方法:a =[91,95,97,99]b =[92,93,96,98]c = a+b # 合并c.sort() # 排序 正序print(c)c.sort(reverse=True) # 排序 倒序print(c)第二种方法:a =[91,95,97,99]b =[92,93,96,98]a[0:0] = b # 合并a.sort()print(a)第三种方法:a =[91,95,97,99]b =[92,93,96,98]a += b原创 2021-03-11 17:39:34 · 2184 阅读 · 0 评论 -
python if判断写法
# 单写法判断'''1、判断:True(打印一),False (打印二)2、判断int:0(打印二),1(打印一) 即:1, -1表示有值,0表示没有值3、判断str:"stern" (打印一),""(打印二) 判空4、判断list, dict 和str效果一样'''dic = {"code": 1, "data": {"1": "2", "s": "3"}, "ms": 444}if dic: print("不空")else: print("空")# 常规写法'原创 2021-03-03 10:43:33 · 292 阅读 · 0 评论 -
python 切片方法
# 前置说明:切片是根据索引来进行切片# 索引是由左至右计算,计算是由0开始算起str = "Line1abcdefLine2abcLine4abcd"print(str[:3]) # 截取前3各字母print(str[4:10]) # 取中间部分print(str[:22:-1]) # 负数,取值顺序颠倒,由右至左进行切取,并打印出的值也是颠倒的print(str[-3:-11:-1]) # -3为切取的起始位置(从右至左),-11为终止位置, -1为设定是从左至右还是从右至左原创 2021-02-27 15:17:30 · 342 阅读 · 2 评论 -
pytest框架中 装饰器的用法
跳过# 直接跳过@pytest.mark.skip(reason="The test case)def test_one(): print(“test_one”)# 条件跳过 condition 为跳过条件,例:1==1 跳过 1!=1时执行@pytest.mark.skipif(condition="1==1", reason='The test case')def test_7(): print("test_7")if __name__ == "__main__":原创 2021-02-26 14:45:21 · 1058 阅读 · 1 评论 -
pytest框架 读取Excel中的用例
简介在使用pytest框架时,使用@pytest.mark.parametrize装饰器来进行参数化,是不是觉得很费劲,特别是后期的维护,是一个很头大的事情,所以我想和unittest框架一样,读取Excel中的用例来进行执行,后期也方便维护,这样会更省时、省心、省力!装饰器参数化import pytestimport random@pytest.mark.parametrize('x', [(1), (2), (6)])def test_add(x): print(x) a原创 2021-02-23 11:27:04 · 3704 阅读 · 1 评论 -
pytest 利用allure 生成可视化报告(mac
生成报告需要先下载配置好allure,没有下载配置的可根据下方链接内容操作:配置allure文章链接配置完成后,直接在代码中加入下方代码即可:if __name__ == "__main__": # 生成脚本执行后的json、txt文档 pytest.main(['--alluredir', '../report/xml']) ''' 第一个路径是指定上个main中生成的文件路径 第二个路径是指定生成HTML后存放的文件路径 --clean 是去除上次生成的原创 2021-02-03 15:19:31 · 291 阅读 · 1 评论 -
mac 下载安装配置allure
allure 安装主要是为了pytest 框架生成可视化报告所用!下载下载链接: https://pan.baidu.com/s/1E0A-6PquVzDgLnIV4Wzaxg 密码: 3q0m解压解压到指定的目录(你想存放的位置解压当前文件夹:unzip ****.zip解压指定文件夹:unzip -o -d /use/bin ****.zip把****.zip文件解压到 /use/bin-o:不提示的情况下覆盖文件;-d:-d /use/bin 指明将文件解压缩到/use/bin原创 2021-02-02 10:01:43 · 1533 阅读 · 3 评论 -
python requests做接口,获取cookies并登陆
看代码也没啥可说的,直接上代码吧,代码中有解释;import reimport requestsimport jsonclass SinceHeaders(object): def since(self, cookie=None): head = {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate, br', 'Accept-Language': 'z原创 2021-01-31 15:37:18 · 985 阅读 · 0 评论 -
python 接口自动化unittest、ddt
今天为大家分享一个接口自动化的框架!1、框架主要功能:请求接口生成HTML测试报告发送附件邮件消息推送至钉钉群生成log便于查看执行情况2、框架:Asser:断言模块(这里封装的是判断,用于判断预期与返回是否一致)CaseFile:用例文件(存放用例所需的文件夹)Common:发送邮件、钉钉推送、HTML、生成log、接口请求的模块result:存放生成的好的log、HTMLtestCase:执行模块config:配置文件,配置其他模块所需的值CreateHTML:执行生成原创 2021-01-08 14:56:25 · 850 阅读 · 0 评论 -
Python 函数break与continue的使用
continue的用法1、continue:if判断是否等于三,不等于的时候,结束本次的循环(就是路走了一半,发现是死胡同,直接换了另一条路)for i in range(5): if i != 3: print("不等于3,使用continue结束本次循环,进行下一轮循环") continue else: print("打印:%s" % i)执行结果:break的用法1、break:符合条件后,直接结束循环(跳出循环)(符合原创 2020-11-23 10:46:11 · 1588 阅读 · 1 评论 -
python 处理数据之 @ddt
from ddt import ddt, unpack, dataimport unittesta = [1, 2]b = [[4, 5], [6, 7]]c = "now_value"d = [{"name": "小明", "age": 28}, {"name": "大红", "age": 18}]@ddtclass Test(unittest.TestCase): def setUp(self): print("执行开始--------") def原创 2020-11-06 15:54:27 · 1021 阅读 · 1 评论 -
python 发送邮件附带execl文件
1、配置参数文件 config.ini# -*- coding: utf-8 -*-[EMAIL]# 发件人addresser = ******@qq.com# 发信方:邮箱授权码aut = *******# 收件人addressee = ********@qq.com# 端口号number = 465# 等待时长await = "timeout=10"# 设置发信服务器pop_smtp = 'smtp.qq.com'2、获取config文件路径impo原创 2020-10-24 14:14:08 · 634 阅读 · 0 评论 -
Python 读取Excel 指定的行和列 内的信息
读取的文件信息,如下图:import xlrdclass RefineReadInformation: def Refineread(self, start, line, path): # 文件的绝对路径 open = xlrd.open_workbook(path) # 指定你要操作的表,xlsx默认有3个工作簿,Sheet1,Sheet2,Sheet3 , 0表示第一个 TableNumber = open.shee原创 2020-10-13 14:58:55 · 7305 阅读 · 2 评论 -
Python 遍历提取返回值
例如: 这个是返回值{'code': 1, 'data': {'list': [{'userIndex': 0, 'userName': '熊晨阳'}, {'userIndex': 0, 'userName': '李烦烦'}, {'userIndex': 0, 'userName': '李闹闹'}, {'userIndex': 0, 'userName': '景区账号'}, {'userIndex': 0, 'userName': '虎'}取值:遍历取出 userName# 转义返回值re原创 2020-10-12 15:23:27 · 1523 阅读 · 0 评论 -
如何利用python来操作Excel
1、读取这里是读取的指定列数#!/usr/bin/env python3# coding: utf-8import xlrdclass ReadTheTestCase: def read(self, FirstFile, HowManyColumns): # 文件的绝对路径 open = xlrd.open_workbook('C:/Users/Administrator/Desktop/sheer.xlsx') open.sheet原创 2020-10-10 10:49:53 · 428 阅读 · 1 评论 -
python 类的继承
class first: def __init__(self): self.a = '这里是父类方法1' def action(self): print('这里是父类方法2')class second(first): def __init__(self): super().__init__() self.b = '这里是父类方法3' def action(self): print('这里原创 2020-09-26 10:41:55 · 94 阅读 · 0 评论 -
Python 批量插入数据库数据
链接数据库咯咯咯咯咯。。。。(已出过链接文章)前期准备导入资料看图:准备所需的数据# 自动随机生成手机号码import random def phone(): phone = random.randint(13000000000, 18999999999) return phone# 自动随机生成坐标def FrameOfReference(zjy_longitude=None, zjy_latitude=None, radius=None): radius_in_de原创 2020-09-11 17:25:35 · 1188 阅读 · 0 评论 -
Python 在一个class 的 for循环中 return 多个值(二)
return多个值的第二种方法这个比较简单一点# 假如now内为请求返回的值now = [1, 2, 3, 4, 5, 6, 7, 8]def return_work(): # 第一步:设置一个空的列表list return_list = [] '''# 第二步:使用for循环来打印返回的值 (如果返回值中只有部分是你想要的, 那你就要提取或切割来先提出想要的内容, 然后再在这里进行整成列表''' for i原创 2020-09-11 15:13:14 · 2339 阅读 · 0 评论 -
Python 简单写接口测试
1、导包 requests# 用于发送接口请求import requests2、写值接口请求值的三类:URL:请求所需的路径data:接口所需的参数headers:所需的请求头在F12中,可以找到所有的请求所需(也可使用charles或Flidder等抓包工具)注:如需验证码,可看我写的关于验证码登录的文章写法看代码:url = "你想请求的链接"headers = { "Accept": "*/*", "Accept-Encoding": "gzip, defl原创 2020-09-08 17:01:23 · 708 阅读 · 0 评论 -
Python 在一个class 的 for循环中 return 多个值
看代码吧,方法虽然笨,但是还是有效的:class QueryTheTotalNumberOfVigilantesInEachDistrict(object): def inquire_QX_YJ(self): self.open_sql() tenant_id = [330150, 330102, 330103] # 循环判断,并根据判断打印每次的值 for so in tenant_id: b, c, d = 0,原创 2020-08-25 11:43:15 · 1479 阅读 · 2 评论 -
Python 遍历的for循环写法
1、list(列表)# 需要遍历的值tenant_id = [330150, 330102, 330103, 330104, 330105, 330106]# 使用for循环进行遍历打印所有值for i in tenant_id: print(i)看下打印出来的效果:2、str(字符串)# 需要遍历的值tenant_id = “330150”# 使用for循环进行遍历打印所有值for i in tenant_id: print(i)看下打印出来的效果:3、dict原创 2020-08-24 17:41:11 · 1999 阅读 · 0 评论 -
python 利用QQ发送邮件
1、设置邮箱、拿取授权码:1、点击邮箱左上角设置2、点击左上角的账户3、找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务:4、点击开启POP3/SMTP服务:5、根据提示,发送短信,然后获取到授权码,把授权码复制下来(发送邮件的时候需要使用)6、代码参考:(这里发送的是文本邮件)。。。我是设置了一个公用的,在其他位置进行引用的import smtplib # smtplib 用于邮件的发信动作from email.mime.text impor原创 2020-07-09 09:53:19 · 692 阅读 · 0 评论 -
Python 操作键盘的常用操作
import pyautoguiimport win32apiimport win32conimport timeimport pyautogui as pagimport randomdef win_hc(): # 操作回车键 win32api.keybd_event(13, 0, 0, 0) win32api.keybd_event(13, 0, win32con.KEYEVENTF_KEYUP, 0) time.sleep(1)def win_sc(原创 2020-06-29 17:14:22 · 1129 阅读 · 0 评论 -
python 利用钉钉推送执行消息
第一步:下载包:1、可以在Pycharm 中直接下载2、也可以在终端下载终端下载:pip install dingtalkchatbot这里是需要的包:import timeimport hmacimport urllibimport hashlibimport base64from urllib import parse第二步:设置钉钉机器人:1、点击群内右上角群设置2、点击智能群助手3、点击添加机器人4、点击添加机器人5、选择自定义6、输入名称7、安全设置:选原创 2020-06-29 16:44:19 · 1330 阅读 · 0 评论 -
Python 下载pillow包的终端命令
打开终端,直接输入以下命令:pip install -i https://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com pillow原创 2020-05-06 20:04:16 · 396 阅读 · 0 评论 -
Python 识别验证码,进行登录
识别过程不说了,可以看我的另外一张文章:https://blog.csdn.net/weixin_44750991/article/details/105660646这里主要是介绍登录,及登录后操作,直接看代码,都有注释:# coding:utf-8import calendarimport base64 # 用于解析返回的imgimport reimport requestsfr...原创 2020-05-06 19:54:58 · 950 阅读 · 0 评论 -
python 中使用正则表达式提取指定值
1.导包import reimport requests 2.提取思路打印返回值查看返回值的数据类型primt(type(返回值名称))如果不是srt类型,就把返回值转换成str类型name = str(返回值名称)# 再打印查看数据类型,这里打印出的就是str类型了primt(type(name))提取返回值内容Name = re.findall(r'"im...原创 2020-04-29 11:32:31 · 2903 阅读 · 0 评论 -
python 利用 tesseract 识别图片验证码
一、配置环境1、下载:a.文件包:tesserocr-2.4.0-cp37-cp37m-win_amd64链接:https://pan.baidu.com/s/17jeqbiOojLGjqMTg99CPCw提取码:88fab.文件包:tesseract-ocr-w64-setup-v5.0.0.20190623链接:https://pan.baidu.com/s/117O4nhljit...原创 2020-04-21 16:32:00 · 1680 阅读 · 6 评论 -
python 把返回值写入txt文本,并修改和删除多余字符 (六)
我这里是分成了两个步骤:去除了头尾的括号“()”cc = res_txt2.replace(’(’, ‘’).replace(’)’, ‘’)把字符串内的单引号,转译成双引号ccc = cc.replace(’’’, ‘"’)废话不说,看代码,有详细注释每一步# coding:utf-8import xlrddef open_txt(): '''# ...原创 2020-01-14 08:44:59 · 1288 阅读 · 0 评论 -
python 把返回值写入txt文本内 (五)
查了很多,也看了很多,整了一顿的虚头巴脑…最后还是这样的!!!废话不说,看代码# coding:utf-8import xlrddef open_txt(): # 指定需要读取的文件位置 workbook1 = xlrd.open_workbook(r'C:/Users/dell/Desktop/111.xls') names = workbook1.shee...原创 2020-01-13 16:22:08 · 1850 阅读 · 0 评论 -
python 读取xls格式文件内的信息(四)
废话不说,直接代码即可,每一步都有注释:# coding:utf-8import xlrddef open_txt(): # 指定需要读取的文件位置 workbook1 = xlrd.open_workbook(r'C:/Users/dell/Desktop/111.xls') names = workbook1.sheet_names() # 输出...原创 2020-01-13 16:11:52 · 533 阅读 · 0 评论 -
python 拿取数据库数据并输出到文本中(三)
今天介绍下,怎么把拿到的数据,全部输出到 Excel 内:导包:import xlwt我是先写了删除,删除文本中全部的之前导入的信息,然后再次导入新的信息:import pymysqlimport xlwtfrom self import self# 导入封装的sql语句from aa.sql import qx_qb, None1from aa.sql import...原创 2020-01-10 13:55:00 · 1056 阅读 · 0 评论