_ new__ 負責物件的建立,是建構函式,他需要返回乙個例項,它是乙個類的方法
_ init___負責物件的初始化,負責對 _new__s例項化的物件進行初始化,即對物件的狀態和屬性進行設定,他不允許有返回值
class
student
:def
__new__
(cls,name)
: self =
super()
.__new__(cls)
print
("student.__new__"
)return self
def__init__
(self,name)
:print
("student.__init__"
) self.__name = name
defdosth
(self,skill)
:print
("%s表演:"
%(self.__name)
,end='')
skill(
)def
sing()
:print
("唱歌"
)def
joke()
:print
("講笑話"
)def
test()
: studet1 = student(
"tom"
) studet1.dosth(sing)
studet2 = student(
"kate"
) studet2.dosth(joke)
test(
)
執行結果:
student.__new__
student.__init__
tom表演:唱歌
student.__new__
student.__init__
kate表演:講笑話
可以看到:由類來建立物件的過程,是先呼叫__new__建立物件, 然後在呼叫__init__初始化物件
aaa
python中的yield關鍵詞用法總結
為了理解yield是什麼,首先要明白生成器 generator 是什麼,在講生成器之前先說說迭代器 iterator 當建立乙個列表 list 時,你可以逐個的讀取每一項,這就叫做迭代 iteration mylist 1 2,3 for i in mylist print i 1 23mylist...
C 中的const關鍵詞用法
cont int i 5 i 8 此處會產生編譯錯誤,因為i被const修飾,因此i的值不能再改變 同樣地,const除了可以修飾基本型別資料外,還可以用來修飾指標和引用,但修飾指標的時候會有常量指標和指標常量之分 const int p 此處是乙個常量指標,從左往右讀,先是常量再是指標。對於對於常...
python提取關鍵詞
value 34895348587575 value 34895348587575 abababbaba value 1.290934 coding utf 8 created on sun aug 16 20 57 31 2020 author jwy coding utf 8 version p...