【发布时间】:2021-07-22 19:56:30
【问题描述】:
这个问题建立在许多假设之上。如果一个假设是错误的,那么整个事情就会失败。我对 Python 还比较陌生,刚刚进入好奇/探索阶段。
据我了解,Python 不支持创建不能被子类化的类(final 类)。但是,在我看来,Python 中的 bool 类不能被子类化。当考虑 bool 类的意图时,这是有道理的(因为 bool 只应该有两个值:true 和 false),我对此很满意。我想知道的是如何这个类被标记为final。
所以我的问题是: Guido 究竟是如何设法防止 bool 的子类化的?
>>> class TestClass(bool):
pass
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
class TestClass(bool):
TypeError: type 'bool' is not an acceptable base type
【问题讨论】:
标签: python inheritance