一、函数、类和方法
1.函数
在python中通过def关键字来定义函数

创建一个add()函数,此函数接收两个参数a,b,通过print()打印a+b的结果。调用add()函数,并且上传两个参数3,5给add()函数

通过add()函数不会直接打印结果,而是将处理结果通过return关键字返回,如下图所示

有时我们在调用add()函数的时候不想传参,这时可以为add()函数设置默认参数,如下图所示

如果调用时不传参,那么add()函数就使用默认参数进行计算,如果传参则计算参数的值

2.类和方法
2.1在python中用class关键字来创建类,代码如下所示

class A(object):
def add(self,a,b):
return a+b count = A()
print(count.add(3,5))#输出结果为8  

上面创建了一个A类(在python3中object为所有类的基类,所有类在创建时默认继承object,所以不声明继承object也可以),在类下面创建了一个add()方法,方法的创建同样使用关键字def,唯一不同的是,方法的第一个参数必须是存在的,一般命名为“self”,但是在调用这个方法时不需要为这个参数传值。

一般在创建类时会首先声明初始化方法__init__()
注意:init的两侧是双下划线,当调用该类时,可以用来进行一些初始化工作

class A():
def __init__(self,a,b):
self.a= int(a)
self.b= int(b) def add(self):
return self.a+self.b count=A('4',5)
print (count.add()) #输出结果为9

当调用A类时首先会执行它的__init__()方法,所以需要对其传参,初始化所做的事情就是将输入的参数类型转换为int类型,这样可以在一定程度上保证程序的容错性。而add()方法可以直接拿初始化方法__init__()的self.a和self.b两个数进行计算,所以,我们在调用A类下面的add()方法时,不需要再进行传参

2.2继承

class A():
def add(self,a,b):
return a+b
class B(A):
def sub(self,a,b):
return a-b print (B().add(3,5)) #输出结果为8

首先,我们创建了一个A类,在其下面创建add()方法用于计算两个数之和,接着创建B类,继承A类,并且又创建了sub()方法用于计算两数之差。因为B类继承了A类,所以B类自然也拥有了A类,所以,B类也有了add()方法,从而可以直接通过B类调用add()方法。

本文仅供个人学习,详情可参考 虫师的<Selenium 2自动化测试实战>

Selenium 2自动化测试实战3(函数、类和方法)的更多相关文章

  1. 《Selenium 2自动化测试实战 基于Python语言》中发送最新邮件无内容问题的解决方法

    虫师的<Selenium 2自动化测试实战 基于Python语言>是我自动化测试的启蒙书 也是我推荐的自动化测试入门必备书,但是书中有一处明显的错误,会误导很多读者,这处错误就是第8章自动 ...

  2. Selenium 2自动化测试实战

    Selenium 2自动化测试实战 百度网盘 链接:https://pan.baidu.com/s/1aiP3d8Y1QlcHD3fAlEj4sg 提取码:jp8e 复制这段内容后打开百度网盘手机Ap ...

  3. Selenium 2自动化测试实战36(更易读的测试报告)

    一.更易读的测试报告 1.知识点:python的注释. 1.一种叫comment,为普通的注释2.另一种叫doc string,用于函数,类和方法的描述.在类或方法的下方,通过三引号("&q ...

  4. Selenium 2自动化测试实战13(设置元素等待)

    一.设置元素等待 若在加载某个元素时延迟而造成的ElementNotVisbleException的情况出现,那么就会降低自动化脚本的稳定性,可以通过设置元素等待改善这种问题造成的不稳定. webdr ...

  5. python接口自动化测试二十一:类和方法

    # 类和方法 class Count(): def __init__(self, aaa, bbb): # 初始化 # 可以放公共的参数 print('实例化的时候,会执行init的内容') self ...

  6. Selenium 与自动化测试 —— 《Selenium 2 自动化测试实战》读书笔记

    背景 最近在弄 appium,然后顺便发现了 Selenium 框架和这本书,恰好这本书也介绍了一些软件测试&自动化测试的理论知识,遂拿过来学习学习.所以本文几乎没有实践内容,大多都是概念和工 ...

  7. Selenium 2自动化测试实战39(Page Object设计模式)

    Page Object设计模式 Page object是selenium自动化测试项目开发时间的最佳设计模式之一,主要体现在对界面交互细节的封装. 1.认识page object优点如下:1.减少代码 ...

  8. Selenium 2自动化测试实战35(HTML测试报告)

    HTML测试报告 显然,一份漂亮的测试报告展示自动化测试成果只有一个简单的log文件是不够的.HTMLTestRunner是python标准库unittest单元测试框架的一个扩展,它生成易于使用的H ...

  9. Selenium+Python自动化测试实战(2)元素定位

    1.Selenium2 的原理 第一篇分享简单介绍了基于Python开发的Selenium2的环境配置,这篇主要讲一下基本用法.首先讲一下Selenium2的基本原理.基本上知道了这个东西是怎么回事, ...

随机推荐

  1. 简单xml示例

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.X ...

  2. 未能加载文件或程序集“System.Web.Http.WebHost

    http://blog.csdn.net/yuanzhugen/article/details/46625353(转)

  3. keras多gpu训练

    使用multi_gpu_model即可.观察了一下GPU的利用率,非常的低,大部分时候都是0,估计在相互等待,同步更新模型: 当然了,使用多GPU最明显的好处是可以使用更大的batch size im ...

  4. crt0.o

    crt1.o, crti.o, crtbegin.o, crtend.o, crtn.o 等目标文件和daemon.o(由我们自己的C程序文件产生)链接成一个执行文件.前面这5个目标文件的作用分别是启 ...

  5. 忘记mysql或mariadb数据库密码的解决方案

    主机环境 主机系统:

  6. mvn高级构建

    指定pom文件,打包指定的module,并且自动打包这个模块所依赖的其他模块. mvn clean install -f vmc-business-parent/pom.xml -pl vmc-sch ...

  7. php面向对象相关技术

    step1 一个经典类的设计和实例化 <?php class mycoach { public $_name=''; public $_age=''; public $_expert=array ...

  8. 对abel 转译 class 过程的研究----------------------引用

    作为当下最流行的 JavaScript 编译器,Babel 替我们转译 ECMAScript 语法,而我们不用再担心如何进行向后兼容. 零.前言 虽然在 JavaScript 中对象无处不在,但这门语 ...

  9. CSS的文本属性

    CSS 文本属性可定义文本的外观. 通过文本属性,可以改变文本的颜色.字符间距,对齐文本,装饰文本,对文本进行缩进等. ㈠缩进文本   text-indent  通过使用 text-indent 属性 ...

  10. 窗体操作:GetWindowLong()

    函数原型: LONG GetWindowLong( HWND hWnd,int nIndex )   参数: hWnd:指定窗口的句柄 nIndex:需要获得的信息的类型      值         ...