python继承

《手把手教你》系列进阶篇之1-python+ selenium自动化测试 - python基础扫盲(详细教程)

為{幸葍}努か 提交于 2019-12-15 05:07:28
1. 简介   如果你从一开始就跟着宏哥看博客文章到这里,基础篇和练习篇的文章。如果你认真看过,并且手动去敲过每一篇的脚本代码,那边恭喜你,至少说你算真正会利用Python+Selenium编写自动化脚本了,你基本掌握了Selenium中webdriver的大部分常用的方法函数。有大佬曾经说过,自动化测试大概可以分三个层次: 1. 手工测试用例转换成自动化测试脚本的过程 2. 能设计自动化测试框架,至少能够维护自动化测试框架。 3. 流程自动化方案设计,例如,一键打包,自动开始测试,自动发送测试报告,自动运维部署上线等。 通过前边文章的基础和练习讲解,学习到这个时间节点,应该是完整介绍了手工测试用例装换成自动化测试脚本这一个初级水平,学到这里,你已经具备了能够编写自动化测试脚本的能力。 在开始介绍设计简单的自动化测试框架之前,我想在这个节点,插入一个新章节,叫Python+Selenium进阶篇,主要是介绍一些设计框架的前提技能和基本Python编写代码的能力。这些能力包括但不限于以下内容: 1. 主流Python开发IDE工具的基本使用,例如Pycharm 2. Python中模块,类和对象的具体代码讲解。 3. Selenium 常见方法的二次封装。 4. 自定义方法的封装和方法的调用-浏览器引擎类。 5. Python读写配置文件介绍 6.

Python常用内建方法:__init__,__new__,__class__

北城余情 提交于 2019-12-14 18:57:58
因为python中所有类默认继承object类。而object类提供了了很多原始的内建属性和方法,所以用户自定义的类在Python中也会继承这些内建属性。可以使用dir()函数可以查看,虽然python提供了很多内建属性但实际开发中常用的不多。而很多系统提供的内建属性实际开发中用户都需要重写后才会使用。对于python来说,属性或者函数都可以被理解成一个属性 class Person(object): pass #查看python中给对象提供的所有(内建)属性 print(dir(Person)) #使用dir()函数查看 ‘’’ [‘ lass ’, ‘ delattr ’, ‘ dict ’, ‘ dir ’, ‘ doc ’,‘ eq ’, ‘ format ’, ‘ ge ’, ‘ getattribute ’, ‘ gt ’,‘ hash ’, ‘ init ’, ‘ init_subclass ’, ‘ le ’, ‘ lt ’,‘ cmodule ’, ‘ ne ’, ‘ new ’, ‘ reduce ’, ‘ reduce_ex ’,‘ repr ’, ‘ setattr ’, ‘ sizeof ’, ‘ str ’, ‘ subclasshook ’,‘ weakref ’] ‘’’ 1.常用内建属性: init__和__new 1.__init_

关于 Python_你一定没读过的8个技巧

泪湿孤枕 提交于 2019-12-14 17:17:53
介绍 Python 功能和小技巧的文章网上有无数篇,比如变量解压缩,partial 偏函数,枚举可迭代对象... 但关于 Python 我们能说的还有很多。所以今天我将向大家展示一些我知道和有使用过的特性,这些特性在其它文章或博客中很少被提及: 消毒字符串输入 对用户输入内容进行消毒几乎适用于你写的每一个程序。通常来说转换字符大小写的操作就足够了,有时候用 Regex 正则表达式就能完成,但对于比较复杂的情况,我们有更好的办法: user_input = "This\nstring has\tsome whitespaces...\r\n" character_map = { ord('\n') : ' ', ord('\t') : ' ', ord('\r') : None } user_input.translate(character_map) # This string has some whitespaces... " 在这个例子中我们可以看到空格子字符"\n"和"\t"已被单个空格代替,而"\r"已经被删除。这是一个很简单的示例,但我们可以更进一步,并使用unicodedata包和它的 combining() 函数来重新生成映射。 迭代器切片 如果尝试对 Iterator 进行切片,则会出现 TypeError和"generator object is not

关于 Python_你一定没读过的8个技巧

吃可爱长大的小学妹 提交于 2019-12-14 15:55:23
介绍 Python 功能和小技巧的文章网上有无数篇,比如变量解压缩,partial 偏函数,枚举可迭代对象... 但关于 Python 我们能说的还有很多。所以今天我将向大家展示一些我知道和有使用过的特性,这些特性在其它文章或博客中很少被提及: 消毒字符串输入 对用户输入内容进行消毒几乎适用于你写的每一个程序。通常来说转换字符大小写的操作就足够了,有时候用 Regex 正则表达式就能完成,但对于比较复杂的情况,我们有更好的办法: user_input = "This\nstring has\tsome whitespaces...\r\n" character_map = { ord('\n') : ' ', ord('\t') : ' ', ord('\r') : None } user_input.translate(character_map) # This string has some whitespaces... " 在这个例子中我们可以看到空格子字符"\n"和"\t"已被单个空格代替,而"\r"已经被删除。这是一个很简单的示例,但我们可以更进一步,并使用unicodedata包和它的 combining() 函数来重新生成映射。 迭代器切片 如果尝试对 Iterator 进行切片,则会出现 TypeError和"generator object is not

Python 元类

二次信任 提交于 2019-12-14 02:43:38
一、什么是元类 二、如何使用元类 (一)不依赖class关键字创建一个自定义类 (二)自定义元类控制类的产生 (三)自定义元类控制类的调用 一、什么是元类 在python中,一切皆对象,而对象都是由类实例化得到的。所以类也是对象,而类的类就是元类,其实 type 就是元类。 二、如何使用元类 class Teacher : def __init__ ( self , name , age , sex ) : self . name = name self . age = age self . sex = sex def score ( self ) : print ( '%s is scoring' % self . name ) tea1 = Teacher ( 'egon' , 18 , 'male' ) print ( type ( tea1 ) ) #<class '__main__.Teacher'> print ( type ( Teacher ) ) #<class 'type'> print ( Teacher ) #<class '__main__.Teacher'> 对象tea1是调用Teacher类得到的 , 如果说一切皆对象 , 那么Teacher也是一个对象 , 只要是对象,都是调用一个类实例化得到的 , 即Teacher = 元类 ( . . . ) ,

Python笔记

扶醉桌前 提交于 2019-12-13 08:37:15
一、if条件判断 s = input('命名: ') 命名 = int(s) if birth < 2000: print(‘00前’) else: print(‘00后’) 例子 if<执行1> elif <条件判断2>: <执行2> elif <条件判断3>: <执行3> else: <执行4> 二、while循环 break语句(必须配合if语句使用) n = 1 while n <= 100: if n > 10: # 当n = 10时,条件满足,执行break语句 break # break语句会结束当前循环 break不能和print对齐,否则无法输出 print(n) n = n + 1 print(‘END’)#不用这句话也可以 continue语句(必须配合if语句使用) n = 0 while n < 10: n = n + 1 if n % 2 == 0: # 如果n是偶数,执行continue语句 continue # continue语句会直接继续下一轮循环,后续的print()语句不会 执行 print(n) i = 0 while i < 7: i += 1 if i == 3:#如果i等于3则会执行continue语句跳过3继续执行下一个值 continue print(i) 三、for循环 hover = [1,5,7,25,95,68] for

《手把手教你》系列进阶篇之1-python+ selenium自动化测试 - python基础扫盲(详细教程)

送分小仙女□ 提交于 2019-12-12 12:58:19
1. 简介 幻想小说 https://www.7wx.org/   如果你从一开始就跟着宏哥看博客文章到这里,基础篇和练习篇的文章。如果你认真看过,并且手动去敲过每一篇的脚本代码,那边恭喜你,至少说你算真正会利用Python+Selenium编写自动化脚本了,你基本掌握了Selenium中webdriver的大部分常用的方法函数。有大佬曾经说过,自动化测试大概可以分三个层次: 1. 手工测试用例转换成自动化测试脚本的过程 2. 能设计自动化测试框架,至少能够维护自动化测试框架。 3. 流程自动化方案设计,例如,一键打包,自动开始测试,自动发送测试报告,自动运维部署上线等。 通过前边文章的基础和练习讲解,学习到这个时间节点,应该是完整介绍了手工测试用例装换成自动化测试脚本这一个初级水平,学到这里,你已经具备了能够编写自动化测试脚本的能力。 在开始介绍设计简单的自动化测试框架之前,我想在这个节点,插入一个新章节,叫Python+Selenium进阶篇,主要是介绍一些设计框架的前提技能和基本Python编写代码的能力。这些能力包括但不限于以下内容: 1. 主流Python开发IDE工具的基本使用,例如Pycharm 2. Python中模块,类和对象的具体代码讲解。 3. Selenium 常见方法的二次封装。 4. 自定义方法的封装和方法的调用-浏览器引擎类。 5.

Python 面向对象

烂漫一生 提交于 2019-12-12 10:54:44
0. OOP-Python面向对象 Python的面向对象 面向对象编程 基础 公有私有 继承 组合,Mixin 魔法函数 魔法函数概述 构造类魔法函数 运算类魔法函数 1. 面向对象概述(ObjectOriented,OO) OOP思想 接触到任意一个任务,首先想到的是任务这个世界的构成,是由模型构成的 几个名词 OO:面向对象 OOA:面向对象的分析 OOD:面向对象的设计 OOI:xxx的实现 OOP:xxx的编程 OOA->OOD->OOI: 面向对象的实现过程 类和对象的概念 类:抽象名词,代表一个集合,共性的事物 对象:具象的事物,单个个体 类跟对象的关系 一个具象,代表一类事物的某一个个体 一个是抽象,代表的是一大类事物 类中的内容,应该具有两个内容 表明事物的特征,叫做属性(变量) 表明事物功能或动作, 称为成员方法(函数) 2. 类的基本实现 类的命名 遵守变量命名的规范 大驼峰(由一个或者多个单词构成,每个单词首字母大写,单词跟单词直接相连) 尽量避开跟系统命名相似的命名 你如何声明一个类 必须用class关键字 类由属性和方法构成,其他不允许出现 成员属性定义可以直接使用变量赋值,如果没有纸,许使用None 案例 01.py 实例化类 变量 = 类名() #实例化了一个对象 访问对象成员 使用点操作符 obj.成员属性名称 obj.成员方法

【python做个录屏软件】2.用PyQt5做个漂亮的GUI

耗尽温柔 提交于 2019-12-12 04:56:49
本篇内容包含: 1.PyQt5-手动书写GUI 2.无边框无标题栏界面 3.鼠标拖动 4.界面隐藏到桌面右边,靠近弹出。 1. GUI的模板 import sys from PyQt5 import QtCore, QtGui, QtWidgets class qt_window(QtWidgets.QWidget): def __init__(self): super().__init__() # 控件布局 # 绑定信号和槽 if __name__ == '__main__': app = QtWidgets.QApplication(sys.argv) ex = qt_window() ex.show() sys.exit(app.exec_()) 继承一个QWidget,然后就可以写自己的界面了。 1.1 添加控件,绑定信号和槽 class qt_window(QtWidgets.QWidget): def __init__(self): super().__init__() self.press_start = True # 控件布局 self.button_start_pause = QtWidgets.QPushButton(u"开始") self.button_stop = QtWidgets.QPushButton(u"结束") main_layout =

Python面向对象-成员

谁都会走 提交于 2019-12-11 23:20:25
'''''' ''' 1、简述面向对象三大特性并用示例解释说明?【背写】 1、封装 狭义的封装:把一组属性封装到一个对象,创建对象的时候 广义的封装:代码块,函数、对象、类、模块-py文件都是封装 把封装后的对象看成一个黑盒子,只需要关注输入和输出,不必关注黑盒子内部的实现 2、继承 1、避免代码的重复 2、可扩展 共有的写在父类,扩展的时候用子类 3、多态 2. 面向中的变量分为哪几种?并用示例说明区别?【背写】 1、成员变量 写在构造方法中的,前面是self. 局部的意思 2、类变量(静态变量) 写在类中方法(成员方法)之外的变量,全局的意思 多个对象共享的 3. 面向对象中方法有哪几种?并用示例说明区别?【背写】 1、成员方法 1、包括构造方法和普通方法 2、第一个参数是self 3、通过对象来直接调用 2、静态方法 1、参数不需要self 2、写法是方法名字上面加上一行@staticmethod 3、通过类名来调用 4、把它理解成类中的函数即可 3、类方法 1、参数只有一个cls,表示可以说传入类名 2、写法是方法名字上面加上一行@classmethos 3、通过类名来调用 4、可以在类方法中创建对象,设计模式 4. 面向对象中的属性有什么?并用示例说明? 定义:用方法来表示一个属性(成员变量) 写法:方法名字上面加一行@property 只有一个参数self 必须有返回值