目录
一、对象(object)
1、什么是对象?
对象是内存中专门用来存储数据的一块区域。对象中可以存放各种数据(比如:数字、布尔值、代码等)。
-
对象由三部分组成:
①对象的标识(id)
②对象的类型(type)
③对象的值(value)
2、编程思想
Python是一门面向对象的编程语言。
- 面向过程:面向过程指将我们的程序的逻辑分解为一个一个的步骤,先干嘛后干嘛
- 面向对象:面向对象指将我们的程序分配给对象来进行操作,你干嘛他干嘛
二、类(class)
(一)类的定义
1、什么是类?
定义一个类也就是定义这一类对象的模板,定义它的属性和方法。类也是对象。
2、类的属性和方法
- 变量会成为该类实例的属性,所有的该类实例都可以通过 对象.属性名 的形式访问属性
- 函数会成为该类实例的方法,所有该类实例都可以通过 对象.方法名() 的形式调用方法
(二)创建一个类
1、类的基本结构
class 类名([父类]) :#class关键字来声明一个类
公共的属性...
# 对象的初始化方法,类的构造方法
def __init__(self,...):
...
# 其他的方法
def method_1(self,...):
...
def method_2(self,...):
...
2、类的构造方法(魔术方法)_init_
3、类的方法中的self
-
方法每次被调用时,解析器都会自动传递第一个实参,第一个参数,就是调用类的实例对象本身,所以方法中至少要定义一个形参,一般我们都会将这个参数命名为self。
-
self只有在类的方法中才会有,独立的函数是不必带有self的。self在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。
-
可以把对象的各种属性绑定到self。self.val = val,表示将外部传来的参数val的值赋值给Myclass类当前实例对象自己的实例属性val。
-
self不是python的关键字,也可以用其他名称命名,但是为了规范和便于读者理解,推荐使用self。
-
如果不加self,表示是类的一个属性(可以通过"类名.变量名"的方式引用),加了self表示是类的实例的一个属性(可以通过"实例名.变量名"的方式引用)。
class Person:
def say_hello(a):