让对象做事:实例方法

作用说明 实例方法用来描述对象可以完成的动作。 class Dog: def sound(self): return "汪汪" d = Dog() print(d.sound()) 小练习 程

开始练习 →

方法读取对象自己的数据

作用说明 在方法里,self 可以帮我们拿到当前对象自己的数据。 class User: def __init__(self, name): self.name = name def greet(self)

开始练习 →

修改对象数据:方法更新属性

作用说明 对象的方法不仅会读取数据,也可以修改对象自己的数据。 class Counter: def __init__(self): self.num = 5 def add_one(self):

开始练习 →

继承已有能力:子类复用父类

作用说明 继承可以让新类直接复用旧类已经写好的能力。 class Animal: def move(self): return "run" class Dog(Animal): pass

开始练习 →

换一种表现:方法重写

作用说明 子类如果想表现得不一样,可以重写父类原来的方法。 class Animal: def speak(self): return "..." class Cat(Animal):

开始练习 →

接着用父类功能:super()

作用说明 super() 可以让子类在自己的方法里继续调用父类已经写好的功能。 class A: def show(self): return "Hello" class B(A): d

开始练习 →

判断对象身份:isinstance()

作用说明 isinstance() 用来判断一个对象是不是某个类创建出来的。 class Book: pass x = Book() print(isinstance(x, Book)) 小练习 程序运行后,会输出什么? 提交要

开始练习 →

给函数加一层包装:装饰器

作用说明 装饰器可以在不改原函数主体的情况下,给函数额外加一层功能。 def deco(fn): def wrapper(): return fn() + "!" return wrapp

开始练习 →

记住外层数据:闭包

作用说明 闭包可以让函数记住它被创建时外层作用域中的数据。 def make_adder(x): def adder(y): return x + y return adder f = make_adder

开始练习 →

按需产出数据:生成器

作用说明 生成器适合按需要一项一项地产生数据,而不是一下子全部准备好。 def squares(): for i in range(1, 4): yield i * i print(list(squares()))

开始练习 →