用法:
classmethod object.__init_subclass__(cls)
每當包含的類被子類化時,都會調用此方法。
cls
是新的子類。如果定義為普通實例方法,則此方法隱式轉換為類方法。給新類的關鍵字參數被傳遞給父類
__init_subclass__
。為了與使用__init_subclass__
的其他類兼容,應取出所需的關鍵字參數並將其他關鍵字參數傳遞給基類,如下所示:class Philosopher: def __init_subclass__(cls, /, default_name, **kwargs): super().__init_subclass__(**kwargs) cls.default_name = default_name class AustralianPhilosopher(Philosopher, default_name="Bruce"): pass
默認實現
object.__init_subclass__
什麽都不做,但如果使用任何參數調用它會引發錯誤。注意
元類提示
metaclass
被其餘類型機製使用,並且永遠不會傳遞給__init_subclass__
實現。實際的元類(而不是顯式提示)可以作為type(cls)
訪問。3.6 版中的新函數。
相關用法
- Python object.__set_name__用法及代碼示例
- Python object()用法及代碼示例
- Python os.path.normcase()用法及代碼示例
- Python os.read()用法及代碼示例
- Python os.DirEntry.inode()用法及代碼示例
- Python os.closerange()用法及代碼示例
- Python os.set_blocking()用法及代碼示例
- Python os.pathconf()用法及代碼示例
- Python os.chflags()用法及代碼示例
- Python operator.truth()用法及代碼示例
- Python operator.le()用法及代碼示例
- Python os.WCOREDUMP()用法及代碼示例
- Python os.fork()用法及代碼示例
- Python os.ctermid()用法及代碼示例
- Python os.mkfifo()用法及代碼示例
- Python os.tcsetpgrp()用法及代碼示例
- Python os.path.commonpath()用法及代碼示例
- Python os.path.splitdrive用法及代碼示例
- Python os.mkdir()用法及代碼示例
- Python os.close()用法及代碼示例
注:本文由純淨天空篩選整理自python.org大神的英文原創作品 object.__init_subclass__。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。