Python面向对象1/4
- 一、理解面向对象
- 二、理解类和对象
-
- 2.1理解类和对象
- 2.2面向对象实现方法
- 三、添加和获取对象属性
-
- 3.1类外面添加对象属性
- 3.2类外面获取象属性
- 3.3类里面获取对象属性
- 四、魔法方法
-
- 4.1__init__()
-
- 4.1.1体验__init__()
- 4.1.2带参数的__init__()
- 4.2__str__()
- 4.3__del__()
- 五、综合应用
-
- 5.1烤地瓜
- 5.2搬家具
一、理解面向对象
- 对于面向过程的思想: 需要实现一个功能的时候,看重的是开发的步骤和过程,每一个步骤都需要自己亲力亲为,需要自己编写代码(自己来做)。开发中小型项目的效率很高。
- 对于面向对象的思想:当需要实现一个功能的时候,看重的并不是过程和步骤,而是关心谁帮我做这件事(偷懒,找人帮我做)。更加适合用于大型开发场景。
二、理解类和对象 ??类与对象的关系:用类去创建对象
2.1理解类和对象 ??类是对一系列具有相同特征和行为的事物的统称,是一个抽象的概念。
- 特征即是属性–变量
- 行为即是方法–函数
- 定义类 语法
class 类名():
代码
......
类的命令要符合大驼峰命名习惯
- 创建对象 语法
对象名 = 类名()
- 体验
class Washer():
def wash(self):
print('能洗衣服')haier = Washer()
haier.wash()# 能洗衣服
self
指的是调用该函数的对象
class Washer():
def wash(self):
print('wash clothes')
print(self)haier = Washer()
print(haier)
haier.wash()
# <__main__.Washer object at 0x000002736D2B0190>
# wash clothes
# <__main__.Washer object at 0x000002736D2B0190>
三、添加和获取对象属性 ??属性即是特征,对象属性在类的内外都能添加与获取。
3.1类外面添加对象属性
- 语法
对象.属性名 = 值
- 体验
haier1.width = 500
haier1.height = 800
3.2类外面获取象属性
- 语法
对象.属性名
- 体验
print(f'洗衣机的宽度为{haier1.width}', end=',')
print(f'洗衣机的高度为{haier1.height}')
3.3类里面获取对象属性
- 语法
self.属性名
- 体验
class Washer():
def wash(self):
print('洗衣服')
def print_info(self):
print(self.width)haier1 = Washer()
haier1.width = 500
haier1.height = 800
haier1.print_info()
四、魔法方法 ??在Python中,
_xx_()
的函数叫做魔法方法,指的是具有特殊功能的函数。4.1__init__() 4.1.1体验__init__()
??
__init__()
方法的作用:初始化对象。__init__()
方法,在创建对象时默认被调用,不需要手动调用。__init__(self)
中的self
参数,不需要开发者传递,python解释器会自动把当前的对象引用传递过去。
class Washer():
def __init__(self):
self.width = 500
self.height = 800def print_info(self):
print(f'洗衣机的宽度是{self.width},高度是{self.height}')haier = Washer()
haier.print_info()
4.1.2带参数的__init__()
【Python|Python学习日记(初级篇02面向对象之基础)——黑马程序员视频学习笔记】目的:传参数
class Washer():
def __init__(self, width, height=800):
self.width = width
self.height = heightdef print_info(self):
print(f'洗衣机的宽度是{self.width},高度是{self.height}')haier = Washer(500, )
haier.print_info()
4.2__str__()
- 当使用print输出对象的时候,默认打印对象的内存地址。如果类定义了
__str__()
方法,那么就会打印从在这个方法中return的数据。
class Washer():
def __init__(self, width, height=800):
self.width = width
self.height = heightdef __str__(self):
return '这是海尔洗衣机的说明书!'haier = Washer(500, )
print(haier)# 这是海尔洗衣机的说明书!
4.3__del__()
- 当删除对象时,python解释器也会默认调用
__del__()
方法。和C++简直一毛一样!(虽然是很久之前学的了。)
class Washer():
def __init__(self, width, height=800):
self.width = width
self.height = heightdef __str__(self):
return '洗衣机说明书'def __del__(self):
print(f'{self}对象已经被删除')haier_temp = Washer(10)
print(haier_temp.width)
# 10
# 洗衣机说明书对象已经被删除
五、综合应用 5.1烤地瓜 5.2搬家具
推荐阅读
- python|Python学习笔记(2)---B站黑马程序员
- 笔记分享|C++学习笔记(B站黑马程序员C++教程)
- c++|【b站黑马程序员C++视频学习笔记-继承的基本语法】
- python|黑马程序员---四天快速入门Python数据挖掘(第一天)
- 黑马程序员&传智播客 python生成器 学习笔记
- #|送给她超浪漫的表白信——她感动哭了(.html)
- #|超级炫酷的3D旋转美女图——Python实现
- python|Python学习笔记(3)---B站黑马程序员
- 线性回归|多元统计分析