一、查缺补漏

  1. APP测试流程梳理https://www.cnblogs.com/dengqing9393/p/6497068.html

  2. 有关类的知识点http://testingpai.com/article/1626334899176

  3. 有关实例的讲解http://testingpai.com/article/1626338391240

  4. if _ name _ == '_ main _' 是什么http://testingpai.com/article/1618471963781

  5. 私有属性http://testingpai.com/article/1626340793276

  6. if _ name _ == '_ main _'的快捷方式:输入main 按tab

二、debug

  1. 下一步操作:Step over F8

  2. 跳进函数内部操作:Step into F7

  3. 程序快速执行,直接到下一个断点停住,在断点之间来回跳动 F9

  4. 退出断点,点击debug右侧红色方块

三、类和对象

  1. 类(种类):拥有相同特点或者属性的一类事务的集合(抽象) 如:人类、动物(猫、狗)、车(汽车、自行车)

  2. 对象(具体的东西):类的实体,实例 如: 具体是什么狗、具体是什么车

  3. 封装:对某些功能内部实现的封装,提供一个接口,调用某个接口然后就能实现某些特定的功能

    如:python的函数、app、提款机、计算器

四、类

  1. 类的定义

    1. python2.x 写法:class 类名称(): 不更新

    2. python3.x 写法:class 类名称: 现在使用的 如:class TestCase:

  2. 类实例方法和实例化(类实例化之后就叫类实例/类对象)最好不要对一个类实例化多次

    1. 类实例化:cl = TestCase() 用是任意名称cl对象来接收这个类,表示调用这个类,cl为类实例对象

    2. 类实例方法:就是写在类里面的普通方法,主要是函数

访问调用方法:在类的外部可使用类实例名称.方法名称()方法调用,在类的内部使用self.方法名称()调用

self解释:在类中定义函数时,规定第一个传的参数必须是函数本身,self中保存的是该类的内存地址

if _ name _ == '_ main _' 解释:是个入口,但是如果不写他也可以调用类中函数,实例化和调用需要顶格写

  1. 类属性:类属性写在类里面,需单独写出来的,不用写在函数里面

类属性的访问不需要实例化,可以直接通过类进行访问

访问调用方法:在类外部可使用类名称.类属性名称和类实例.类属性名称,类实例就是实例化之后的名称

在类内部可使用self.类属性名称

  1. 实例属性:写在类里面的def _ init _(self):下面的变量self.变量名,实例属性必须实例化之后访问,自动执行访问

访问调用方法:在类的外部可使用类实例.实例属性名称,类不能直接访问实例属性

在类的内部使用self.实例属性名称

当实例化属性有多个参数时调用需要在实例化的括号里面加实参

当类属性和实例属性同名,使用类实例去访问的时候,优先使用类实例属性

def _ init _(self):实例属性是初始化方法,当类实例化之后就自动执行,未调用的时也执行,当类后加()已经是实例化了,所以实例属性中不能使用实例化对象

  1. 类方法:使用@classmethod来修饰函数的方法就叫类方法

类方法的self名称(类名称)应与类实例方法的self名称(类地址)不一致

访问调用方法:类名.方法名称

  1. 私有属性 可作用于类属性、类实例属性

外部不可访问,但是可以使用类实例.类名 _想要访问的私有对象访问对象

私有属性是以_ _(双下划线开头)的属性,不能在类外面进行访问,只能在类内部进行访问

  1. 私有方法:私有方法是以双下划线开头的方法

五、一些帮助理解的东西

  1. 类实例化:就像人类是一个统称,人类有可以吃饭的方法,但是要具体到一个实例也就是某一个人才能真正实现这个吃饭的方法,人类这个统称是不能吃饭的

  2. 不论什么方法调用时最好都要实例化对象,因为对象调用一切

  3. 以单下划线开头(_foo)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用“from xxx import *”导入

    以双下划线开头的(_ _foo)代表类的私有成员

    以双下划线开头和结尾的(_ foo )代表python里特殊方法专用的标识,如 _ _init _()代表类的构造函数

  1. 要取类中函数的对象的值时用新对象接收,要调用类函数里面的对象时后面加()括号

  2. 我们学的函数,在类里面不叫函数,叫方法

  3. 类属性、实例属性、私有属性,其实本质就是变量

Python_10 debug、类和对象的更多相关文章

  1. php类与对象

    1.类与对象 对象:实际存在该类事物中每个实物的个体.$a =new User(); 实例化后的$a 引用:php的别名,两个不同的变量名字指向相同的内容 封装: 把对象的属性和方法组织在一个类(逻辑 ...

  2. C#跟踪和调试程序-Debug类使用

    摘要: 怎样在 Visual C# .NET 中跟踪和调试?当程序运行时,您可以使用 Debug 类的方法来生成消息,以帮助您监视程序执行顺序.检测故障或提供性能度量信息.默认情况下,Debug 类产 ...

  3. php 类与对象

    1.类与对象 对象:实际存在该类事物中每个实物的个体.$a =new User(); 实例化后的$a引用:PHP的别名,两个不同的变量名字指向相同的内容 封装: 把对象的属性和方法组织在一个类(逻辑单 ...

  4. C++类和对象(一)&&实现offsetof宏&&this指针

    一.目录 1.对象的相关知识 2.类的定义 3.类的实例化 4.类对象模型 5.模拟实现offsetof宏 6.this指针 二.正文 1.对象的相关知识 C语言是面向过程的,关注的是过程,分析求解问 ...

  5. 【转】PHP 类与对象

    原文:http://blog.csdn.net/e421083458/article/details/8217650 1.类与对象 对象:实际存在该类事物中每个实物的个体.$a =new User() ...

  6. PHP 类与对象 全解析(三)

    目录 PHP 类与对象 全解析( 一) PHP 类与对象 全解析( 二) PHP 类与对象 全解析(三 ) 13.魔术方法 定义:PHP把所有以__(两个下划线)开头的类方法当成魔术方法     __ ...

  7. Java编程里的类和对象

    像我们搞计算机这块的,都知道这么一件事,当前的计算机编程语言主要分为两大块,一为面向过程,二为面向对象.Java就是一门纯面向对象的语言.学习了一个月左右的Java,在下对于Java当中的类和对象有了 ...

  8. Python - 类与对象的方法

    类与对象的方法

  9. C++基础知识(5)---类和对象

    终于把C++中的基础在前面的几篇博客中总结完了,可能还有一些语法还没有总结到,没关系,以后用到了再查资料就好.类是C++中的一个非常重要的概念,这是区别你使用的C++到底是面向过程还是面向对象的一个重 ...

  10. 简述JavaScript对象、数组对象与类数组对象

    问题引出 在上图给出的文档中,用JavaScript获取那个a标签,要用什么办法呢?相信第一反应一定是使用document.getElementsByTagName('a')[0]来获取.同样的,在使 ...

随机推荐

  1. python生成随机汉字

    python 随机生成汉字 第一种方法:Unicode码 在unicode码中,汉字的范围是(0x4E00, 9FBF) 这个方法比较简单,但是有个小问题,unicode码中收录了2万多个汉字,包含很 ...

  2. Solution Set - Splay

    A[洛谷P3369]维护集合,支持插入,删除,查询\(x\)的排名,查询排名\(x\)的数,查询前驱,查询后继. B[洛谷P3391]维护一个序列,支持区间翻转. C[洛谷P3380]维护数列,支持单 ...

  3. 一图明白ACHI,SATA之间的关系

    从上图中可以看到,SATA与PCI-E不仅可以指代物理的接口,还可以指代物理接口使用的传输协议. M.2物理接口可以使用SATA.PCI-E传输协议. U.2可以使用PCI-E传输协议.在网上搜了一下 ...

  4. vue3的reactive对象赋值后失去响应式的问题

    vue3种对象类型的响应式用reactive实现. 但是reactive对象在赋值后,因为变量代理函数变了,就失去了响应式功能了.示例如下: <template> <div> ...

  5. C数据结构:树和森林存储方式与遍历方式

    文章目录 树的存储方式 双亲表示法 孩子链表表示法 孩子兄弟表示法(二叉树表示法) 树和二叉树的转换 森林和二叉树的转换 树和森林的遍历 树的遍历方式 森林的遍历方式 浅谈一下几个问题 为什么树没有中 ...

  6. C 语言编程 — 数据类型转换

    目录 文章目录 目录 前文列表 数据类型转换 隐式(自动)类型转换 常用的算术转换 显式(强制)类型转换 前文列表 <程序编译流程与 GCC 编译器> <C 语言编程 - 基本语法& ...

  7. lvs之DR模式的实操演练

    理论 我是内部服务,代替我访问外部网络,这是正向代理:代替外部网络访问我,这是反向代理 槽位 sh根据源地址.调度到某个节点,dh,根据目标地址,调度到某个节点, 实战演练 默认策略以及修改策略 查看 ...

  8. golang select 和外层的 for 搭配

    select语句通常与for循环搭配使用,但并不是必须的. 在某些情况下,select可能会直接放在一个独立的goroutine中,没有外层的for循环. 这通常发生在你知道只会有一次或有限次操作的情 ...

  9. C# dynamic动态对象赋值

    dynamic 如果接收的是匿名对象,是无法为属性赋值的,而如果是接收的定义对象,又无法扩展字段. 解决办法序列化为json字符串,然后用Dictionary反序列化,就能赋值了.也能扩展新的字段. ...

  10. Vue cli之项目目录结构

    src 主开发目录,要开发的单文件组件全部在这个目录下的components目录下 static 静态资源目录,所有的css,js文件放在这个文件夹 dist 项目打包发布文件夹,最后要上线单文件项目 ...