一 python自动化基础能力:3.python基础上之数据类型,函数(13)


面向过程 → 面向对象:
面向过程的典型代表是C语言,是早期语言的特点,是将一件事分成一个个步骤,并用函数分别实现 。
面向对象是一种思考问题的方式,是一种思想,将事物变得简单化 。
对面向对象的理解:
(1)可以让复杂事务变得简单化,人由执行者过渡到指挥者;
(2)具备封装、继承和多态 。
举例——孩子吃瓜:
(1)妈妈穿衣服穿鞋出门
(2)妈妈骑电动车
(3)妈妈到超市门口停好电动车
(4)妈妈买瓜
(5)妈妈结账
(6)妈妈骑电动车回家
(7)到家孩子吃瓜
这是一个典型的面向过程的例子,在现实中没问题,但是在程序中会出现问题,在复用、修改时会出现很多问题 。
面向过程的思想:
将一个功能分解成一个一个的小步骤 。
面向对象就是让孩子吃瓜,而不管具体怎么实现,细节在对象内部 。
2.类(class)的简介
目前所用到的对象都是内置的对象,如int、float、str等 。
类简单理解就是一张图纸,在程序中我们需要根据类来创建对象 。
a = int(10)print(a)
打印10 。
定义一个类:
自己定义类时,类名要以大写开头 。
语法:
class 类名([父类]):代码块

class MyClass():passprint(MyClass)
打印
class MyClass():pass#用MyClass创建了一个对象mc,mc是MyClass的实例mc = MyClass()print(mc,type(mc))12345
打印
解释:用创建了一个对象mc,mc是的实例 。
class MyClass():pass#用MyClass创建了一个对象mc,mc是MyClass的实例mc = MyClass()mc2 = MyClass()mc3 = MyClass()mc4 = MyClass()#用来检查一个对象是否是一个类的实例result = isinstance(mc,MyClass)result2 = isinstance(mc2,int)result3 = isinstance(mc3,type(mc))result4 = isinstance(mc4,type(mc4))print(result,result2,result3,result4)
打印True False True True
()用来检查一个对象是否是一个类的实例 。
3.对象的基本介绍 3.1 对象的创建流程
类也是一个对象,类是一个用来创建对象的对象 。
class MyClass():passprint(id(MyClass),type(MyClass))
打印28
显然,类是一个type类型的对象 。
创建类的实例即对象时,实例并没有值,是空的,所对应的类也是没有值的,也是空类 。
可以向对象中添加变量,对象中的变量称为属性 。
class MyClass():passmc = MyClass()mc.name = 'Tom'print(mc.name)
打印Tom
即属性是添加到实例中,而不是到类中,如print(.name)会报错 。
3.2 对象的定义
类和对象都是对现实生活中事物或程序内容的抽象 。
实际上,所有的事物都是由两部分组成的:
※数据(属性)
※行为(方法)
在类的代码中,可以定义变量和函数;
在类中定义的变量将会成为所有实例的公共属性,所有实例都可以访问这些变量 。

class Person():a = 10b = 20#创建Person的实例p1 = Person()p2 = Person()print(p1.a,p2.b)
打印10 20
加入有意义的属性:
class Person():name = 'Tom'#创建Person的实例p1 = Person()p2 = Person()print(p1.name)