過載加法運算
class
newlist
(list):
def__add__
(self,other)
: result=
for i in
range
(len
(self)):
try:
+other[i]
)except:)
return result
ls=newlist([1
,2,3
,4,5
,6])
lt=newlist([1
,2,3
,4])
print
(ls+lt)
輸出:[2,
4,6,
8,5,
6]
過載小於運算
實現兩個列表的和的比較
class
newlist
(list):
def__lt__
(self,other)
: s,t=0,
0for c in self:
s+=c
for c in other:
t+=c
return
true
if sfalse
ls=newlist([6
,1,2
,3])
lt=newlist([1
,2,3
,99])
print([
6,1,
2,3]
<[1
,2,3
,99])
print
(ls輸出:false
true
成員運算的過載
列表的元素和也包含在列表中
class
newlist
(list):
def__contains__
(self,item)
: s=
0for c in self:
s+=c
ifsuper()
.__contains__(item)
or item==s:
return
true
else
:return
false
ls=newlist([6
,1,2
,3])
print(6
in ls,
12in ls)
輸出:true
true
其他運算的過載
class
newlist
(list):
def__format__
(self,format_spec)
:"格式化輸出,以三逗號分隔"
t=for c in self:
iftype
(c)==
type
("字串"
):else
:str
(c))
return
",,,"
.join(t)
ls=newlist([1
,2,3
,4])
print
(format([
1,2,
3,4]
))print
(format
(ls)
)輸出:[1
,2,3
,4]1
,,,2
,,,3
,,,4
python物件導向之類,物件
類別,乙個是抽象概念 小a的朋友們 是一些列具備相同特徵和相同行為的物件的集合 就是具體操作的某個事物,具備自己的特徵和行 小a的朋友 小明 類包含一系列物件 物件屬於某個類 在現實中先有物件,再有類 在程式中是,先有類,才能有物件 而在程式中是先有類才能物件,我們必須先告訴計篡機這類的物件有什麼特...
Python中物件導向之類
1.建構函式案例 class complex def init self,real,imag 此處要記得寫引數self self.r real self.i imag print 建構函式被呼叫 x complex 3.0,4.5 print x.r,x.i 2.析構函式 案例class compl...
python物件導向之類的繼承
繼承 復用的高階抽象 繼承是物件導向程式設計的精髓之一 實現了以類為單位的高抽象級別 復用 繼承是新定義類能夠幾乎完全使用原有類屬性與方法的過程 基類的屬性基本等同於定義在派生類中 派生類可以直接使用基類的類屬性 例項屬性 派生類可以直接使用基類的各種方法 使用基類的類方法和類屬性時,要用基類的類名...