菜鳥教程
個人小站
類定義
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...