快速答案
本答案页包含 Python 类与对象 的 4 道选择题、4 道填空题和 4 道输出预测题,每题都给出准确答案和简短解释。
答案已完整展示,建议先尝试作答,再用本页核对。第一次练习最好从互动练习页开始。
哪个方法负责初始化新对象?
答案: __init__
为什么: 创建实例时会自动运行 __init__。
方法里的 self 指向什么?
答案: 当前实例
为什么: self 是调用该方法的那个对象。
怎样创建 Order 的实例?
答案: Order("latte", 4.5)
为什么: 像调用函数一样调用类,就能创建实例。
什么是属性?
答案: 保存在对象上的数据
为什么: 属性保存某个对象的状态。
补全初始化对象的方法名。
class Order:
def ____(self, drink):
self.drink = drink答案: __init__
为什么: __init__ 是初始化方法。
补全属性赋值,把 drink 参数保存到实例上。
class Order:
def __init__(self, drink):
self.____ = drink答案: drink
为什么: self.drink 会把参数保存到实例上。
补全表达式,让价格乘以数量。
class Order:
def total(self):
return self.price ____ self.quantity答案: *
为什么: self.price * self.quantity 使用对象自己的属性。
补全调用,创建一个 Order 实例。
order = ____("latte", 4.5)
print(order.price)答案: Order
为什么: 类名后面加括号就会创建实例。
这段代码会输出什么?
class A:
def __init__(self, x):
self.x = x
print(A(3).x)答案: 3
为什么: 实例把 3 保存在 x 属性中。
运行结果是什么?
class A:
def value(self):
return 7
print(A().value())答案: 7
为什么: 方法返回 7。
这段程序打印出什么?
class Order:
def __init__(self, price, quantity=2):
self.price = price
self.quantity = quantity
print(Order(4).price * Order(4).quantity)答案: 8
为什么: 每个 Order 的价格是 4、数量是 2,乘积为 8。
代码的输出结果是什么?
class A:
pass
print(A().__class__.__name__)答案: A
为什么: 类名是 A。
先试一遍题目
打开 Python 类与对象 练习页,用即时反馈回答同样的 12 道题。