我明白__new__
是什麼(以及它與__init__
有什麼不同),所以我對定義不感興趣,我對什麼時候以及如何使用__new__
感興趣。Python的__new__有什麼用例?
文檔說:
一般情況下,你不應該需要重寫
__new__
除非你繼承一個不變的類型像str
,int
,unicode
或tuple
但我做不到不要想到其他情況下使用__new__
或如何正確使用它(例如,當子類化不可變類型或爲什麼它需要在這種情況下)。
那麼,何時,爲什麼以及如何使用__new__
?
我對用例感興趣,而不是它所做的(我知道它是幹什麼的)。
@MFFarlane:我知道,我對你需要使用__new__時的情況感興趣(比「不可變類型的子類化」更多。**這不是重複。** – JohnDoDo
@close選民這個問題不是重複的,所引用的問題是*爲什麼'__init__'總是在'__new__' *之後被調用(不是),這個問題要求'__new__'的實際用例。這個問題 –
@lazyr:希望你不介意,我把你的意見納入問題。謝謝! – JohnDoDo