python 物件導向

2021-08-21 21:30:10 字數 3851 閱讀 5620

菜鳥教程

個人小站

類定義

class

classname:

1>..

.

類物件

#!/usr/bin/python3

class

myclass:

"""乙個簡單的類例項"""

i = 12345

deff

(self):

return

'hello world'

# 例項化類

x = myclass()

# 訪問類的屬性和方法

print("myclass 類的屬性 i 為:", x.i)

print("myclass 類的方法 f 輸出為:", x.f())

輸出結果:

myclass 類的屬性 i 為: 12345

myclass 類的方法 f 輸出為: hello world

類方法

#!/usr/bin/python3

#類定義

class

people:

#定義基本屬性

name = ''

age = 0

#定義私有屬性,私有屬性在類外部無法直接進行訪問

__weight = 0

#定義構造方法

def__init__

(self,n,a,w):

self.name = n

self.age = a

self.__weight = w

defspeak

(self):

print("%s 說: 我 %d 歲。" %(self.name,self.age))

# 例項化類

p = people('csdn',10,30)

p.speak()

輸出結果:

csdn 說: 我 10 歲。
類的繼承

class

derivedclassname

(baseclassname1):..

.n>

例項

#!/usr/bin/python3

#類定義

class

people:

#定義基本屬性

name = ''

age = 0

#定義私有屬性,私有屬性在類外部無法直接進行訪問

__weight = 0

#定義構造方法

def__init__

(self,n,a,w):

self.name = n

self.age = a

self.__weight = w

defspeak

(self):

print("%s 說: 我 %d 歲。" %(self.name,self.age))

#單繼承示例

class

student

(people):

grade = ''

def__init__

(self,n,a,w,g):

#呼叫父類的構函

people.__init__(self,n,a,w)

self.grade = g

#覆寫父類的方法

defspeak

(self):

print("%s 說: 我 %d 歲了,我在讀 %d 年級"%(self.name,self.age,self.grade))

s = student('ken',10,60,3)

s.speak()

輸出結果:

ken 說: 我 10 歲了,我在讀 3 年級
多繼承

class

derivedclassname

(base1, base2, base3):..

.n>

例項

#!/usr/bin/python3

#類定義

class

people:

#定義基本屬性

name = ''

age = 0

#定義私有屬性,私有屬性在類外部無法直接進行訪問

__weight = 0

#定義構造方法

def__init__

(self,n,a,w):

self.name = n

self.age = a

self.__weight = w

defspeak

(self):

print("%s 說: 我 %d 歲。" %(self.name,self.age))

#單繼承示例

class

student

(people):

grade = ''

def__init__

(self,n,a,w,g):

#呼叫父類的構函

people.__init__(self,n,a,w)

self.grade = g

#覆寫父類的方法

defspeak

(self):

print("%s 說: 我 %d 歲了,我在讀 %d 年級"%(self.name,self.age,self.grade))

#另乙個類,多重繼承之前的準備

class

speaker

(): topic = ''

name = ''

def__init__

(self,n,t):

self.name = n

self.topic = t

defspeak

(self):

print("我叫 %s,我是乙個演說家,我演講的主題是 %s"%(self.name,self.topic))

#多重繼承

class

sample

(speaker,student):

a =''

def__init__

(self,n,a,w,g,t):

student.__init__(self,n,a,w,g)

speaker.__init__(self,n,t)

test = sample("tim",25,80,4,"python")

test.speak() #方法名同,預設呼叫的是在括號中排前地父類的方法

輸出結果

我叫 tim,我是乙個演說家,我演講的主題是 python
方法重寫

#!/usr/bin/python3

class

parent:

# 定義父類

defmymethod

(self):

print ('呼叫父類方法')

class

child

(parent):

# 定義子類

defmymethod

(self):

print ('呼叫子類方法')

c = child() # 子類例項

c.mymethod() # 子類呼叫重寫方法

super(child,c).mymethod() #用子類物件呼叫父類已被覆蓋的方法

輸出結果

呼叫子類方法

呼叫父類方法

python物件導向學習 python物件導向學習

物件導向最重要的概念就是類 class 和例項 instance 必須牢記類是抽象的模板,比如student類,而例項是根據類建立出來的乙個個具體的 物件 每個物件都擁有相同的方法,但各自的資料可能不同。物件導向三個概念 1.封裝 即把客觀事物封裝成抽象的類,並且類可以把自己的資料和方法讓可信的類進...

python物件導向總結 Python物件導向總結

python 物件導向 oop 1 物件導向 是乙個更大封裝,把乙個物件封裝多個方法 2 類 是對一些具有相同特徵或行為的事物的乙個統稱,是抽象的,不能直接使用 特徵被稱為屬性 行為被稱為方法 3 物件 是由類建立出來的乙個具體的存在,可以直接使用 先有類再有物件,類只有乙個,而物件可以有多個 類中...

python登入物件導向 python 物件導向

一 屬性和方法 1.a a 例項屬性 通過例項物件來新增的屬性就是例項屬性 a.count 10 例項方法都是在類中直接定義的 以self為第乙個引數的方法都是例項方法 當通過例項物件呼叫時,會自動傳遞當前物件作為self傳入 當通過類物件呼叫時,不會自動傳遞self a.test 等價於 a.te...