python
文章平均质量分 54
菜鸟教程*…*
这个作者很懒,什么都没留下…
展开
-
学会python接口自动化测试项目实战
Pytest是python的第三方单元测试框架,比自带unittest更简介和高效,支持315种以上的插件,同时兼容unittest框架。这就使得我们在unittest框架迁移到pytest框架的时候不需要重写代码。原创 2023-01-11 22:39:09 · 483 阅读 · 0 评论 -
Python 字符串连接的七种方式
缺点:性能较差,因为 Python 中的字符串是不可变类型。用 “+” 号连接就相当于生成一个全新的字符串,生成字符串则需要重新申请内存,那么当用 ” + ” 连接非常多个字符串时,将会很耗费内存,可能造成内存溢出。这种功能比较强大,借鉴了C语言中 printf 函数的功能,如果你有C语言基础,看下文档就知道了。Python 遇到未闭合的小括号,自动将多行拼接为一行,相比三个引号和换行符,这种方式不会把换行符、前导空格当作字符。用 ‘+’连接字符串应该是最基本的方式了,话不多说,直接上代码。原创 2023-01-07 22:20:31 · 5756 阅读 · 0 评论 -
Mysql中where与having的区别
1. WHERE 可以直接使用表中的字段作为筛选条件,但不能使用分组中的计算函数作为筛选条件;3. 第二项导致了WHERE执行效率高,不能使用分组中的计算函数进行筛选,而HAVING 可以使用分组中的计算函数,执行效率较低。我们的 total_price等价于sum(item_price*quantity),而在WHERE 子句中使用聚合函数。4. HAVING 不能单独使用,必须要跟 GROUP BY 一起使用。上述的错误为:非法使用聚合函数,不能在 WHERE 子句中使用聚合函数。1. 行已经被分组。原创 2023-01-07 22:12:50 · 3304 阅读 · 0 评论 -
python连接mysql之PyMySQL的基本使用
这里的取一条,不是第一条,是依次往下取数据的,ret1 ,是第1条数据,ret2 ,是 2、3、4 数据。ret1 = cursor.fetchone() # 取一条。ret3 = cursor.fetchone() # 取一条。conn_queue:定义了一个队列,队列存放的是数据库的连接。for循环:建立好十个与数据库的连接,把这些连接放到队列中。size:连接池支持的连接数,这里定义为10。发生异常后,2条数据,都没有写入库里。6.1初始化 __init__一、PyMySQL的基本使用。原创 2023-01-07 22:01:55 · 739 阅读 · 0 评论 -
Python中三个双引号的作用
是不是可以明显感觉到采用多行字符串定义可以让程序更加清晰,规整,可读性更好!在python程序中,有时可以看到三个连续的双引号,浅析一下它的作用。作用二:定义多行字符串。作用一:进行多行注释。原创 2023-01-07 21:52:36 · 4736 阅读 · 1 评论 -
python实现添加时间参数并写入文件
现在有一批根据学号、姓名、年龄的数据,需要随机添加学生的上学时间、放学时间,并按照上学时间的正序排列输出打印到相应文件。将上学时间、放学时间以列表嵌套字典的形式插入到数据里面。原创 2022-12-22 12:53:37 · 770 阅读 · 0 评论 -
python自动化之Python webservice协议
增加一个web-service库,用来测试webservice接口。一般HTTP协议的api接口,要求开啊提供接口文档,进行测试。webservice接口:suds-jurko client。webservice接口会自动生生成接口的描述文档。requests:HTTP api接口。原创 2022-11-14 16:17:59 · 1574 阅读 · 0 评论 -
匿名函数的作用
既然变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数,同样,我们还可以把一个函数当作另一个函数的返回值。这种函数的使用方式我们称之为高阶函数。函数对应的数据类型是function,可以把它当做是一种复杂的数据类型。既然同样都是一种数据类型,我们就可以把它当做是数字或者字符串来处理。在Python中,函数其实也是一种数据类型。一个函数的参数是另一个函数,高阶函数。...原创 2022-07-21 22:19:05 · 375 阅读 · 0 评论 -
函数知识点
def函数名([参数,…])函数体1.如何定义函数2.调用函数参数deffunc()passfunc()2.有参数一般参数passfunc(1,2)可变参数args单个元素kwargs关键字参数passfunc()func(1)func(a=10)默认值passfunc()func(100)func(b=99)返回值return没有返回值None嵌套函数—>闭包—>装饰器变量的作用域LEGBL。...原创 2022-07-18 08:09:37 · 98 阅读 · 0 评论 -
匿名函数的使用
。原创 2022-07-17 19:15:35 · 715 阅读 · 0 评论 -
python关于str.sort()方法和sorted()函数
不管是list.sort还是sorted()都有两个可选的关键字参数‘reverse’,默认等于False,为升序,如果设定为True,则为降序。在对一些字符串排序时,可以使用key=str.lower来实现忽略大小写的排序,或者使用key=len进行基于字符串长度的排序。list.sort方法会就地排序列表,不会把原列表复制一份,这也就是这个方法返回值是None的原因,提醒本方法不会新建列表。...原创 2022-07-17 14:53:00 · 859 阅读 · 0 评论 -
Python入门到放弃(一)
python是解释型语言Python的特点简单、易学、速度快、免费开源、高层语言、可移植性、解释性、面向对象(也支持面向过程)、可扩展性、可嵌入性、丰富的库、规范的代码在cmd中退出python,输入exit()或ctrl+Z退出搜索“国内镜像源”…python安装python1.python解释器2.pip包管理器,管理的是扩展的一些库文件。(放在Lib/site-packages)3.python的标准库Libpip包管理器安装一个库文件交互式编程。.........原创 2022-07-17 11:36:21 · 1915 阅读 · 3 评论 -
Python2+Pytest接口自动化测试全方案设计与开发
接口excel编写用例(编写测试用例时参考的是接口文档)Requests使用 Yaml介绍与安装 Yaml基本操作1.字典2.列表3.字典嵌套字典4.字典嵌套列表5.列表嵌套列表6.列表嵌套字典7.读取多个文档8.Yaml读取文件单个文档:r=yaml.safe_load(f)多个文档:Yaml.safe_load_all()配置文件 函数级别的方法 类级别的方法 数据参数化举例1数据参数化示例1传入多个参数,当传入多个参数时,是以元组的形式来使用的 结果断原创 2022-06-11 22:20:14 · 370 阅读 · 0 评论 -
Python-线程入门
线程(英语:thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。线程的直观理解我们可以看到360软件可以执行杀毒、清理垃圾、启动项加速等功能,并且三者可以同时执行。而负责每一个具体功能的运行交给一个去做。线程用例 输出: 线程状态...原创 2022-06-08 22:40:55 · 248 阅读 · 0 评论 -
[leetcode]1.两数之和
给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例 2:输入:nums = [3,2,4], tar原创 2022-05-05 20:24:31 · 339 阅读 · 0 评论 -
Python中enumerate用法详解
enumerate()是python的内置函数、适用于python2.x和python3.xenumerate在字典上是枚举、列举的意思enumerate参数为可遍历/可迭代的对象(如列表、字符串)enumerate多用于在for循环中得到计数,利用它可以同时获得索引和值,即需要index和value值的时候可以使用enumerateenumerate()返回的是一个enumerate对象s = [1, 2, 3, 4, 5]e = enumerate(s)print(e)输出结..原创 2022-05-05 19:44:58 · 110028 阅读 · 1 评论 -
Python中类的创建与使用及Python构造器
定义:类是一种数据结构,可用于创建实例,一般情况下,类封装了数据和用于该数据的方法注意点:方法中self参数类属性是供所有对象共享的。只有实例内部的数据才由实例自己内部使用。因此方法中必须有self参数且必须是第一个,他隐含当前实例之意。在方法内对self属性做赋值运算会产生每个实例自己的属性,如下图中会产生x,y实例自己的属性。name是一个实例属性,而gender是类属性。#Python构造器构造方法是一个很奇特的名字,代表着类似于以前例子中使用过的那种名为init的初始化方原创 2022-04-01 17:31:08 · 2977 阅读 · 0 评论 -
Pytest前后置处理
Pytest前后置处理Pytest框架实现一些前后置的处理,常用三种。1.setup/teardown,setup_class/teardown_class使用场景:用例执行之前,需要做初始化操作;用例执行结束之后,需要做资源清理总配置文件pytest.ini[pytest]addopts = -vstestpaths = testcase/test_setup_teardown.pypython_files = test_*.pypython_classes = Test*python原创 2022-03-09 18:27:51 · 2176 阅读 · 0 评论 -
Python多线程Threading
Python并发编程简介1.为什么要引入并发编程?场景1:一个网络爬虫,按顺序爬取了1小时,采用并发下载减少到20分钟!场景2:一个APP应用,优化前每次打开页面需要3秒钟,采用异步并发提升到每次200毫秒;2.有哪些程序提速的方法?3.python对并发编程的支持怎样选择多线程Thread、多进程Process、多协程Coroutine1.什么是CPU密集型计算、IO密集型计算?2.多线程、多进程、多协程的对比3.怎样根据任务选择对应技术?...原创 2021-10-29 23:31:40 · 2416 阅读 · 3 评论 -
Python多线程的原理与实现
目录Python多线程原理与实战目的:1.线程基本概念1.1线程是什么?1.2 线程和进程关系?2.Python线程模块2.1 如何创建线程3 线程间同步3.1 线程同步问题4 线程池线程池要设置为多少?5 协程python 进行并发编程小结Python多线程原理与实战目的:1)了解python线程执行原理2)掌握多线程编程与线程同步3)了解线程池的使用1.线程基本概念1.1线程是什么?线程是指进程内的一个执行单元,也是原创 2021-10-24 21:06:26 · 640 阅读 · 0 评论 -
Python函数中的变量作用域
目录一、变量作用域二、全局变量和局部变量一、变量作用域一个程序的所有的变量并不是在哪个位置都可以访问的。访问权限决定于这个变量是在哪里赋值的。变量的作用域决定了在哪一部分程序你可以访问哪个特定的变量名称。两种最基本的变量作用域如下: 全局变量 局部变量二、全局变量和局部变量定义在函数内部的变量拥有一个局部作用域,定义在函数外的拥有全局作用域。局部变量只能在其被声明的函数内部访问,而全局变量可以在整个程序范围内访问。调用函数时,所有在函数内声明的变量名称都将被加入到原创 2021-10-24 19:22:56 · 825 阅读 · 0 评论 -
Python中的GIL(全局解释器锁)详解及解决GIL的几种方案
先看一道GIL面试题:描述Python GIL的概念, 以及它对python多线程的影响?编写一个多线程抓取网页的程序,并阐明多线程抓取程序是否可比单线程性能有提升,并解释原因。GIL:又叫全局解释器锁,每个线程在执行的过程中都需要先获取GIL,保证同一时刻只有一个线程在运行,目的是解决多线程同时竞争程序中的全局变量而出现的线程安全问题。它并不是python语言的特性,仅仅是由于历史的原因在CPython解释器中难以移除,因为python语言运行环境大部分默认在CPython解释器中。通过一个案例了解单原创 2021-10-23 14:32:50 · 4029 阅读 · 0 评论 -
python不定长参数详解
不定长参数如果想要一个函数能不固定接收任意多个参数,可以使用不定长参数。1.不定长参数两种基本形式:python自定义函数中有两种不定长参数,第一种是*XXX,在传入额外的参数时可以不用指明参数名,直接传入参数值即可。第二种是**XXX,这种类型返回的是字典,传入时需要指定参数名。加了一个星号 * 不定长参数会以元组(tuple)的形式导入,存放所有未命名的变量参数。加了两个星号 ** 的参数会以字典的形式导入,存放已命名的变量参数。例如代码#coding=utf-8#第一个是元转载 2021-10-23 14:14:05 · 13066 阅读 · 0 评论