Cette question est construite sur de nombreuses hypothèses. Si une hypothèse est fausse, alors l'ensemble tombe. Je suis encore relativement nouveau à Python et je viens d'entrer dans la phase curieuse/exploratoire.Dernières classes en Python 3.x- quelque chose que Guido ne me dit pas?
Je crois comprendre que Python ne supporte pas la création de classes qui ne peuvent pas être sous-classées (final classes). Cependant, il me semble que la classe bool en Python ne peut pas être sous-classée. Cela a du sens quand on considère l'intention de la classe bool (parce que bool n'est supposé avoir que deux valeurs: true et false), et j'en suis content. Ce que je veux savoir est comment cette classe a été marquée comme finale.
Donc, ma question est: comment exactement Guido a-t-il réussi à empêcher la sous-classe de 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
question connexe:Why I can't extend bool in Python?
Lien vers la documentation: http://docs.python.org /c-api/typeobj.html#Py_TPFLAGS_BASETYPE –