logo
41

类与对象

⏱️ 40分钟

类(Classes):把数据和行为封装到一起

你现在可能会困惑什么

“我已经会函数了,为什么还要类?”

函数擅长处理步骤,类擅长建模“对象状态 + 行为”。

一句话定义

类是创建对象的模板,对象包含属性(数据)和方法(行为)。

生活类比

类像“学生档案模板”,对象是“具体某个学生”。

最小可运行例子

class Student:
    def __init__(self, name, score):
        self.name = name
        self.score = score

    def is_pass(self):
        return self.score >= 60

s = Student("Amy", 85)
print(s.is_pass())

课堂小测(5 分钟)

  1. 定义 Book 类(title, price)。
  2. is_expensive() 方法。
  3. 创建两个对象并测试。

课堂小测参考答案与判分点

  • 参考答案方向:能写出可运行代码,并覆盖题目中的核心条件与边界输入。
  • 判分点 1(正确性):主流程结果正确,关键分支可执行。
  • 判分点 2(可读性):变量命名清晰,结构不过度嵌套。
  • 判分点 3(健壮性):对空值、类型错误或异常输入有基础保护。

迁移任务(课后)

把你的“用户字典处理脚本”改成 User 类版本。

本节验收标准

你能独立做到:

  • 定义类和初始化方法
  • 创建对象并调用方法
  • 区分属性与方法职责

常见报错与调试步骤(新手版)

  • 报错看不懂:先读最后一行错误类型(如 TypeErrorNameError),再回到对应代码行定位。
  • 不确定变量值:在关键位置临时 print(变量, type(变量)),先确认数据是否符合预期。
  • 改了代码却没生效:确认文件已保存、运行的是当前文件、终端环境(venv)是否正确。

常见误区

  • 误区:类只是语法花样。
  • 正解:类解决“状态和行为绑定”的建模问题。