二、类与对象学习笔记
2026-02-21
Python基础
type
Post
status
Published
date
Feb 21, 2026
slug
python-class-and-object-learning-notes-2
summary
类就像是蛋糕模具,对象就是用模具做出来的蛋糕。一个模具可以做很多蛋糕,每个蛋糕都是独立的!
tags
category
Python基础
icon
password
💡 学习感悟:类就像是蛋糕模具,对象就是用模具做出来的蛋糕。一个模具可以做很多蛋糕,每个蛋糕都是独立的!
1. 定义类
1.1 基本语法
📝 我的理解:class就像是创建模具的命令,告诉 Python 我要定义一个新的类型。
1.2 类命名规范
⚠️ 注意:类名使用大驼峰命名法(CamelCase),如MyClassName!
2. 创建对象
2.1 实例化类
📝 我的理解:每次Dog()就像是用模具做一个新蛋糕,每个蛋糕都是独立的个体。
2.2 对象引用
📝 我的理解:dog2 = dog1就像是给同一个蛋糕贴了两个标签,不是做了两个蛋糕。
3. 构造方法 init
3.1 初始化对象
📝 我的理解:__init__就像是蛋糕的装饰师——蛋糕做好了,自动给它加上奶油、水果(初始化属性)。
3.2 默认参数
📝 我的理解:默认参数就像是蛋糕的默认装饰——不指定就用草莓,指定了就用芒果。
4. 实例属性
4.1 访问和修改
📝 我的理解:实例属性就像是蛋糕上的标签——可以随时查看(访问)和改写(修改)。
4.2 动态添加属性
⚠️ 注意:Python 允许动态添加属性,但不推荐,容易让代码难以维护!
5. 类属性
5.1 定义类属性
📝 我的理解:类属性就像是学校的校名——所有学生都共享同一个校名,不用每个学生都存一份。
5.2 类属性 vs 实例属性
特性 | 类属性 | 实例属性 |
定义位置 | 类内部,方法外部 | __init__ 中,用 self. |
共享性 | 所有实例共享 | 每个实例独立 |
访问方式 | 类名.属性 或 实例.属性 | 实例.属性 |
用途 | 所有对象相同的数据 | 每个对象不同的数据 |
6. 删除对象和属性
6.1 删除属性
6.2 删除对象
📝 我的理解:del就像是撕掉标签——标签没了,但蛋糕可能还在(如果有其他标签)。
7. 踩坑记录
7.1 忘记写 self
⚠️ 踩坑:实例方法的第一个参数必须是self,表示实例自身!
7.2 类属性被实例修改
⚠️ 踩坑:类属性使用可变对象(list、dict)时,所有实例共享,修改会影响全部!
8. 核心知识点整理
8.1 类与对象关系
8.2 属性访问规则
类型 | 定义 | 访问方式 | 示例 |
类属性 | 类内部,方法外 | 类名.属性 或 实例.属性 | Student.school |
实例属性 | self.属性 | 实例.属性 | s.name |
8.3 类定义模板
Loading...
