Python
好好学习,天天向上
王怕怕升职记
测试是一种爱好。
展开
-
【Python】初步学习深拷贝和浅拷贝,copy和deepcopy。或者叫做深复制和浅复制
前几天在万门大学上学习列表list的操作,突然老师说到浅复制和深复制,稀里糊涂听了一下,没听懂,我就快进了。前几天又看了一个测试大牛的面试题,里面就说到python的装饰器、深拷贝和浅拷贝。哇塞,面试居然问这个,我赶紧去认真学习了一下。https://mp.weixin.qq.com/s/IP7CExenlKGzkSTA-sOkWA以下是基于我个人的理解,可能不准确,或者不全面。在平时工作中,经常涉及到数据的传递,在数据传递使用过程中,可能会发生数据被修改的问题。为..原创 2021-05-25 17:04:42 · 342 阅读 · 4 评论 -
【Python】使用random和string库,生成4位随机的验证码
# 生成1个4位验证码,包括数字和小写字母# 第一种是比较复杂的方式。引入随机数库randomimport random# 初始化列表数据,把10个数字和26个小写字母都初始化到1个列表里,因为太多,所以就写了一部分all_row_code = ['0','1','3','4','5','6','7','a','c','e','e','f','j','k','p','g']# 初始化1个空列表,稍微填充数据my_code_list = []# range(4)的意思是[0,1,2,3],.原创 2021-05-11 18:50:56 · 5993 阅读 · 4 评论 -
【Python】编写一个Python 函数,可以接收任意多个整数,并输出其中的最大值和所有整数之和
# for循环中,输出不同结果for i in [1,5,9]: s = i + 1 print("输出所有数字,和它的+1结果:",i,s)for i in [1,5,9]: s = i + 1print("输出最后1个数字,和它的+1结果:",i,s)s = 0for i in [1,5,9]: s = s + iprint("输出和:",s)输出结果:输出所有数字,和它的+1结果: 1 2输出所有数字,和它的+1结果: 5 6输出所有数字,.原创 2021-05-08 11:14:11 · 20818 阅读 · 3 评论 -
【Python】写入生成CSV文件时出现多余空行,读取CSV文件如何从第二行开始
1、我们平时测试时,需要批量生成一些测试数据,然后写入到CSV文件里,但是在正常执行时,会发现CSV文件出现多余空行。下面代码中的"newline="就是解决这个问题的,有遇到的同学可以试试。file = open("test_data.csv","w",newline="") # 创建文件,分别是文件名、w打开方式(w代表新建,如果已存在,就删除重写)、newline(如果不加,每行数据就会多一空白行)2、当生成测试数据后,我们开始读取。因为第一列是表头,比如编号、姓名等,我们需要从原创 2020-11-26 15:50:50 · 1865 阅读 · 2 评论 -
【Python+Faker】如何使用Faker库,批量生成可使用的测试数据
在日常测试中,我们经常需要用到造一些测试数据。如果要是手动制造数据的话,肯定要花费时间精力,这不合理。此时我们应该使用Faker这个Python库,用它来生成各种各样的真数据。# -*- coding: utf-8 -*-import csvfrom faker import Fakerimport datetimefile = open("test_data.csv","w",newline="") # 创建文件,分别是文件名、w打开方式(w代表新建,如果已存在,就删除重写)、newl原创 2020-11-24 16:40:02 · 904 阅读 · 6 评论 -
【Python+unittest+HTMLTestRunner】进行简单的接口自动化测试,并且导出html格式的测试报告
前段时间看了微信公众号“搜狗测试”的一篇文档,收藏了好久,这次找时间学习了一下。1、一共2个py文件,第一个文件是Weather_If_Case.py# -*- coding: utf-8 -*-import requestsimport unittestclass Weather_Interface(unittest.TestCase): # 定义1个类,带入unittest def test_weather(self): # 定义1个函数原创 2020-11-23 17:45:46 · 393 阅读 · 0 评论 -
【Python+Pytest】使用parametrize方法编写测试用例,将测试用例参数化
我们平时测试某些功能点的时候,需要多次输入参数进行测试,比如登录(需要输入各种类型的数值),这些实际都是1条测试用例。在使用postman、pytest等,就需要参数化。pytest的参数化工具是parametrize。import pytestdef add(x): return x + 2class Test_Class_Add(): @pytest.mark.parametrize("input, result", [ (2, 5),原创 2020-11-02 17:35:39 · 715 阅读 · 0 评论 -
【Python+Pytest】简单的Pytest例子,感觉比unittest好用一些,而且兼容unittest代码
切记一点,py文件、类名、测试用例名都要以“test_”开头。# 切记,py文件也要以“test_”开头import pytest # 首先引入pytest。简单的例子不引入也能运行def add(x): # 先申明1个函数“返回传值+2”,做为测试使用 return x + 2class Test_Class_Add(): # 先定义1个类,一定要以“test_”开头 def test_add1(self): # 定义测试用户,一定要以“test_”开头原创 2020-11-02 17:25:55 · 1026 阅读 · 0 评论 -
【Python】好久没学习,今天开始继续,还是从Python开始
1、# 定义1个列表,列表中每条数据是1个字典,然后遍历输出data = [{"name":"papa1", "age":18, "sex":"male"},{"name":"papa2", "age":19, "sex":"female"},{"name":"papa3", "age":20, "sex":"unkown"},]for i in data: print(f"--------------------") for a,b in i.items(): .原创 2020-10-29 17:28:19 · 147 阅读 · 0 评论 -
【Python】未知来源的Python 2020期末考试试题,大家可以来答题学习了
最近在学习,然后看到有别人发的Python期末考试,不知道具体的来源,猜测是某大学的课程,今天来学习一下。一、选择题1、下列是 python 合法标识符的是( B)。A. 2variable B. variable2 C. $anothervar D. ifAC要以英文开头,D是关键字。2、在 python 中字符串的表示方式是(D )。A.采用单引号包裹;B.采用双引号包裹;C.采用三重单引号包裹;D.ABC 都是。3、设有变量赋值 x=3.5;y=4.6;z=5.7.原创 2020-09-17 15:10:18 · 7418 阅读 · 0 评论 -
【Python】使用python语言填写“石头剪头布”小游戏,通过if else语句、While语句、Try语句等
石头剪刀布的游戏规则:1.玩家是输入,电脑是随机数2.通过if语句进行判断3.当输入字符串和浮点数时,报错。循环执行。import randomclass Game(object): def __init__(self, name, player, computer): self.name = name self.player = player self.computer = computer def Game(self)原创 2020-05-09 17:52:06 · 499 阅读 · 0 评论 -
【Python】使用super()函数进行类的继承,将父类的方法和属性继承在子类的里。
学习对象:@丁七岁https://blog.csdn.net/qq_43612538/article/details/1059147201.创建School类,声明3个主属性2.创建学生类Student,继承自School类的3个属性, 添加额外两个属性:班级class、学号s_no。 打印学生的所有信息print_info方法。3.创建教师类Teacher,继承自School类, 添加额外两个属性:部门department、工号c_no。 添加方法:打印教师的所有信息print..原创 2020-05-09 11:45:51 · 703 阅读 · 0 评论 -
【Python】初识easygui模块,EasyGui图形用户界面简单案例
2个月前在CSDN博客学习python的时候,发现一篇博文:https://blog.csdn.net/m0_46289755/article/details/104220392是一位小妹妹的学习bok俄【Garbage Classification 垃圾分类测试】,很汗颜,年龄大了1倍,但是知识还不如小妹妹。今天抽出时间,仔细学习了一下。具体代码如下:import easyg...原创 2020-05-07 17:55:26 · 1052 阅读 · 2 评论 -
【Python常见面试题】统计字符串中 n 的出现次数
# 统计字符串中 n 的出现次数:strtemp='ab2b3n5n2n67mm4n2'print(strtemp.count('n'))原创 2020-05-07 11:56:52 · 3148 阅读 · 0 评论 -
【Python常见面试题】有两组数据分别为a=[1,2,3,4,5] b=[‘a’,'b','c','d','e'],通过python如何成c=['a1','b2','c3','d4','e5']
a = [1,2,3,4,5]b = ['a','b','c','d','e']k = []for i,j in zip(b, a): c = str(i) + str(j) k.append(c)print(k)a=[1,2,3,4,5]b = ["a", "b", "c", "d", "e"]c = [str(i)+str(j) for i,j in zip...原创 2020-05-06 16:02:54 · 2258 阅读 · 0 评论 -
【Python】zip()函数的用法,将多个序列组合后再生成多个序列。接受任意类型,并可以输出任意类型
1.zip()方法在Python3中为了减少内存,zip() 返回的是一个zip对象。可以根据需求,改为list、tuple、dict等2.如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同。3.利用 * 号操作符,可以将元组解压为列表。# -*- coding: utf-8 -*-# @Time : 2020/5/6 14:47# @Author : 王怕怕升职记...原创 2020-05-06 15:49:23 · 932 阅读 · 0 评论 -
【Python】输入圆的半径,根据自定义的方法返回圆的周长/面积等
今天在CSDN博客上学习(瞎逛),看到了1个小案例。目前我的水平正好学习到了这里,@丁七岁博主的水平是我学习的对象。https://blog.csdn.net/qq_43612538/article/details/105914806根据博客内容,手敲了一遍,其中有几块又重新学习了几次,最终成功编写出代码。需求:1.创建类,分别定义方法,计算圆的周长、圆的面积、球的表面积...原创 2020-05-06 10:28:41 · 14051 阅读 · 0 评论 -
【Python常见 面试题】实现三位数的水仙花数,Python入门案例学习
问题:如果一个3位数等于其各位数字的立方和,则称这个数为水仙花数。求1000以内的水仙花数(3位数)最简单的思路,3个数字都是0-9,3个数字组成的三位数==各自的立方的和,得出结果。for x in range(0,10): for y in range(0, 10): for z in range(0, 10): sxh = int(...原创 2020-05-05 17:33:40 · 1022 阅读 · 0 评论 -
【Python】list.append()和list.extend()的区别是什么,这是最简单的解释
append和extend的区别:list.append(object) 向列表中添加一个对象objectlist.extend(sequence) 把一个序列seq的内容添加到列表中a = [1,2,3,4,5]c = [6,7]a.append(c); print(a)a = [1,2,3,4,5]c = [6,7]a.extend(c); print(a)...原创 2020-05-04 21:55:50 · 1044 阅读 · 0 评论 -
【Python】将列表list进行翻转、升序和降序
b = [3,4,7,2,5,6]print(b[::-1]) # 将列表翻转排序print(b[:-1]) # 列表切片最后1条数据print("-" * 20) # 输出20个横杠,做为分隔符# sort()的用法:直接修改原列表,不能生成新列表b.sort(); print(b) # 默认升序b.sort(reverse=True); print(b) # reverse...原创 2020-05-04 21:49:08 · 3063 阅读 · 0 评论 -
【Python】try、expect异常的简单案例,同While循环语句共同使用
while True: try: a = int(input("please input:")) print(a **2) break except: # 当输入浮点数、汉字、字母等就会抛出异常。 print("sorry, please input again!")...原创 2020-05-04 21:24:02 · 3122 阅读 · 0 评论 -
【Python】使用\t制表符将列表中的字典数据输出,使用format格式化,类似Excel和数据库格式
有时为了美化输出数据,我们需要使用一些制表符,这里有1个简单的例子。# 首先定义1个列表,列表中每条数据均是1个字典student_list = [ {"name": "张三", "sex": "男", "age": 18, "score": 90 }, {"name": "李四", "sex": "男", "age"...原创 2020-05-03 20:31:30 · 3683 阅读 · 1 评论 -
【Python】使用Pyhon语言来实现1个时钟的小程序
放假第2天,终于有时间开始学习了,之前攒了好多的免费视频,一股脑拿出来开始观看。今天看的是《六星教育》的暮念老师,号称长沙最帅的男人,嗓门超级大,但是他的解释很到位,学习了很多。class Clock:# 定义1个时钟类 def __init__(self, hour=0, minute=0, second=0): self.hour = hour ...原创 2020-05-02 21:54:21 · 380 阅读 · 0 评论 -
【Python】str.isdigit() 和 float.is_integer()的用法和区别,判断数据是否是数字
str.isdigit() 和 float.is_integer()都可以判断数据是否是数字,但是二者是有一定区别的,具体见代码。# str.isdigit(),用来判断1个字符串str是否全部都是数字,如果是,返回Truea = 5; print(a.isdigit()) # AttributeError: 'int' object has no attribut...原创 2020-05-01 20:34:38 · 3349 阅读 · 0 评论 -
【Python常见面试题】使用pyton如何统计1个列表list的正数和负数的数量
【Python常见面试题】使用pyton如何统计1个列表list的正数和负数的数量a = [1, 3, 2, 4, 0, -1, -2.5, 0]print("列表a的长度是:%d" % len(a))b = []c = []d = []for i in a: if i > 0: b.append(i) elif i < 0: ...原创 2020-05-01 20:34:04 · 2827 阅读 · 0 评论 -
【Python】详细解说split()分隔字符串并输出列表的方法,并使用re模块分割多种符号的字符串
python的spilt()方法可以有效将1个字符串分隔开,并以列表的形式进行输出。以下是具体的使用方法:str1 = "Hello world, My name is 王怕怕升职'"str2 = str1.split() # 以空格为分隔符,全部分隔str3 = str1.split(" ", 3) # 以空格为分隔符,分为4份print(str2)print(str3)pri...原创 2020-04-30 14:49:43 · 5885 阅读 · 0 评论 -
【Python常见面试题】实现9×9乘法口诀表的输出,正序和倒序
【Python常见面试题】实现9×9乘法口诀表的输出,正序和倒序主要有以下几个知识点1、for循环2.range()函数的输出,包括正序、倒序3.打印输出时,使用end()可以不换行for x in range(1, 10): for y in range(1, x + 1): print("%d×%d=%d" % (x, y, x * y), end...原创 2020-04-30 10:39:33 · 649 阅读 · 0 评论 -
【Python常见面试题】列表list数据如何去重,去掉列表中重复的数据
# 列表去重,先使用set去重,然后使用for循环将集合转化成列表list1 = [1, 2, 1, 3, 'a', 'b', 'b']print("list1 原始数据是:%s" % list1)x = set(list1)print("list1 set之后的数据是:%s" % x)list2 = []for i in x: list2.append(i)prin...原创 2020-04-30 09:58:29 · 1065 阅读 · 0 评论 -
【Python】if __name__ == "__main__":的详细理解,这是我见过最简单容易的解释了
1.引言在Python当中,如果代码写得规范一些,通常会写上一句if __name__ == "__main__":作为程序的入口.但似乎没有这么一句代码,程序也能正常运行。这句代码多余吗?原理又在哪里?本篇博文对此进行总结说明。2.2个模块正常调用我们知道,当我们把模块A中的代码在模块B中进行import A时,只要B模块代码运行到该import语句,模块A的代码会被执...转载 2020-04-29 10:34:02 · 185 阅读 · 0 评论 -
【Python】使用json库将json和str字符串进行转换,适用于requests接口测试进行断言
使用python的requests库进行接口测试,返回的数据如果是json格式时,python认为是字符串,是不支持的。python只有字典、元组、字典、集合。所以需要将str字符串转换成字典格式。import requestsimport json# 简单的1个接口测试url = "https://www.v2ex.com/api/nodes/show.json"quer...原创 2020-04-28 16:11:54 · 504 阅读 · 0 评论 -
【Python常见面试题】使用Python实现2个数字得出最大公约数的算法代码,最后发现math最合适
最大公因数,指两个或多个整数共有约数中最大的一个。比如54和24的最大公约数就是6。(可以理解为最大的整除数)x = input("请输入正整数:")y = input("请输入正整数:")if x.isdigit() == True and y.isdigit() == True: x = int(x) y = int(y) if x > y: ...原创 2020-04-28 15:08:44 · 418 阅读 · 1 评论 -
【Python】阶乘实例,输入1个正整数,计算阶乘
# Python 阶乘实例:整数的阶乘是所有小于及等于该数的正整数的积,0的阶乘为1。即:n!=1×2×3×...×n。num = int(input("请输入正整数:"))sum = 1if num == 0: print("0的阶乘是1")elif num < 0: print("负数没有阶乘")else: for i in range(1,n...原创 2020-04-26 19:13:25 · 22780 阅读 · 0 评论 -
【Python】列表解析(python 列表推导式),将for循环和if条件判断写在同1条语句,进行输出
1.两个for间是不能有判断语句的,判断语句只能在最后;2.执行顺序默认是左到右y = []for x in range(1,11): y.append(x**2)print("列出1~10所有数字的平方:", y)print("列出1~10所有数字的平方:", [z**2 for z in range(1,11)])print("-------------------...原创 2020-04-26 18:42:24 · 1476 阅读 · 0 评论 -
【Python面试题】根据输入的温度,进行摄氏温度和华氏温度的数据转换
根据输入的数据最后一位进行判断,依据对应的公式转换数据,并输出结果。a = input("请输入温度,例如30C、80F:")# 当输入数字最后1位包含以下字符时,根据公式进行转换,并最后输出if a[-1] in ["c", "C", "度"]: T = (float(a[0:-1]) * 1.8) + 32 print("您输入的温度是%.1f°C, %.1f°F"...原创 2020-04-22 18:12:23 · 4829 阅读 · 0 评论 -
【Python面试题】输入2个正整数,输出它们的最小公倍数
实现思路:1.输入2个正整数数,找出最大数2.如果最大数,可以整除2个数,最大数就是最小公倍数。(使用% == 0判断是否整除)3.开始循环,从最大数开始+1,直到可以整除x = int(input("请输入正整数:"))y = int(input("请输入正整数:"))z = max(x, y)while True: if z % x == 0 and z % y ...原创 2020-04-21 10:07:28 · 10892 阅读 · 0 评论 -
【Python】报错ValueError: invalid literal for int() with base 10的解决办法
当执行下面代码时,输入正整数没问题。但是当输入1个浮点数,比如1.2,就会报错ValueError: invalid literal for int() with base 10。:a = int(input("请输入数字:"))度娘之后发现原因如下1.输入浮点数之后,变成字符串。字符串有1个小数点,导致int()无法转换2.如果是正整数的字符串,int()是可以转换成功的。...原创 2020-04-20 18:44:25 · 39334 阅读 · 0 评论 -
2019年《NCT青少年编程能力等级考试》:Python编程一级真题。看看能否答100分
卷面分值100分,考试时间60分钟。2019年NCT等级考试Python一级答案:转载 2020-04-20 17:19:39 · 15598 阅读 · 4 评论 -
【Python】集合如何去重,大括号{}集合或set(),组合输出
# {}或者set()函数,均可以去重a = {1, 2, 3, 2, "a", "b", "a", "王", "怕怕", "升职记", "怕怕"}print(a)b = [1, 2, 3, 2, "a", "b", "a", "王", "怕怕", "升职记", "怕怕"]print(set(b))# 验证某字符串是否被包含c = {"王", "怕怕", "升职记"}print(...原创 2020-04-16 16:25:09 · 1495 阅读 · 0 评论 -
【Python+Selenium】使用send_keys上传文件,自动化测试在博客园自动发布博客
在学习博客园“叁藏法师”老师的《自动化测试基础篇--Selenium文件上传send_keys》文章后,根据内容也编写了一遍代码,并根据个人理解不同,更新了一下。实现以下几个功能:1.登录。(滑动验证,仍然需要手动)2.隐式等待方法3.为避免博客标题重复,使用了datetime模块4.博客园上传图片是input控件,所以用send_keys即可上传图片5.上传图片的控件是新弹窗...原创 2020-04-15 17:05:59 · 719 阅读 · 1 评论 -
【Python】使用join()函数将列表和字典合并成字符串
a = '-'b = ("x","yf","z")print(a.join(b))print('*.*'.join(b))# 可以用join()转化为字符串print(''.join(["1","2","3",'a','b','王怕怕','升职记']))print('-'.join(("1","2","3",'a','b','王怕怕','升职记')))# 列表和字典输出时,需要...原创 2020-04-14 16:59:36 · 5647 阅读 · 2 评论