我明白__init__
和__new__
是如何工作的。 我想知道是否有什麼__init__
可以做到__new__
不可以?Python:總是使用__new__而不是__init__?
即可以使用__init__
通過以下方式代替:
class MySubclass(object):
def __new__(cls, *args, **kwargs):
self = super(MySubclass, cls).__new__(cls, *args, **kwargs)
// Do __init__ stuff here
return self
我問,因爲我想使Python OO這方面適合我的頭好。
[爲什麼在一個類中定義了'\ _ \ _ new__'和'\ _ \ _ init__'](http:// stackoverflow。在這個主題上的老問題:[Python的使用\ _ \ _ new__和\ _ \ _ init__?](http:/ /問題/ 2017876/Why-defined-new-and-init-all-in-a-class) – 2012-08-03 05:51:18
/stackoverflow.com/questions/674304/pythons-use-of-new-and-init) – 2010-06-28 10:15:01