说明
《Python 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
(编码题)设计一个类 Counter,该类可以被调用(即实现 __call__
方法),并能够记录被调用的次数。每次调用时,计数器的值应该增加1。此外,该类还应该提供一个方法 reset() 用于重置计数器的值为零。
要求:
这个题目考察了 __call__
方法的使用以及类的状态维护。
Python 代码如下
class Counter:
def __init__(self):
self._count = 0
def __call__(self):
self._count += 1
return self._count
def reset(self):
self._count = 0
# 使用示例
counter = Counter()
print(counter()) # 输出: 1
print(counter()) # 输出: 2
counter.reset()
print(counter()) # 输出: 1
在这个例子中,Counter 类有一个私有属性 _count
用于存储计数器的值。__init__
方法初始化计数器为零。__call__
方法在每次调用时增加计数器的值,并返回当前计数器的值。reset() 方法用于重置计数器的值为零。通过实例化 Counter 类并调用其实例,可以模拟计数器的行为。
查看相关链接中的知识。
(完)
更新时间:Aug. 16, 2024, 10:50 p.m. 标签:python 习题 可调用对象