python物件導向之類的運算

2021-10-05 11:54:20 字數 1923 閱讀 6048

過載加法運算

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物件導向之類的繼承

繼承 復用的高階抽象 繼承是物件導向程式設計的精髓之一 實現了以類為單位的高抽象級別 復用 繼承是新定義類能夠幾乎完全使用原有類屬性與方法的過程 基類的屬性基本等同於定義在派生類中 派生類可以直接使用基類的類屬性 例項屬性 派生類可以直接使用基類的各種方法 使用基類的類方法和類屬性時,要用基類的類名...