如果子類的__slots__直接在父類基礎上增加score屬性,輸出也正確,有無區別?
class Person(object):
??? __slots__ = ('name', 'gender')
??? def __init__(self, name, gender):
??????? self.name = name
??????? self.gender = gender
class Student(Person):
??? __slots__ = ('name', 'gender', 'score')
??? def __init__(self, name, gender, score):
??????
??????? self.score = score
???????
s = Student('Bob', 'male', 59)
s.name = 'Tim'
s.score = 99
print(s, s.score, s.name)
?
2022-03-27
函數里面加一個exit,解決需要使用event.preventDefault()來阻止事件的默認動作。
2018-10-12
我覺得子類的__slot__和父類的__slot__是兩個不同的屬性。分別存放單獨的元組。 在系統搜索的時候先在自身的__slot__里面的元組進行搜索,找不到的再到父類里面搜索,所以子類里面放不放父類的屬性沒有多大關系,損失點性能而已,忽略不計。
2018-08-23
居然這樣也可以運行,照理來說 你要繼承也要super(Student,self).__init__(name,gender) 應該也要繼承父類先初始化吧。。。
2018-07-21
沒有初始化,那么子類的屬性就會被父類原有屬性覆蓋。
2018-07-18
我想這大概是一種覆蓋