物件 = 屬性 + 方法
物件是類的例項。換句話說,類主要定義物件的結構,然後我們以類為模板建立物件。類不但包含方法定義,而且還包含所有例項共享的資料。
【例子】
class
turtle
:# python中的類名約定以大寫字母開頭
"""關於類的乙個簡單例子"""
# 屬性
color =
'green'
weight =
10 legs =
4 shell =
true
mouth =
'大嘴'
# 方法
defclimb
(self)
:print
('我正在很努力的向前爬...'
)def
run(self)
:print
('我正在飛快的向前跑...'
)def
bite
(self)
:print
('咬死你咬死你!!'
)def
eat(self)
:print
('有得吃,真滿足...'
)def
sleep
(self)
:print
('困了,睡了,晚安,zzz'
)tt = turtle(
)print
(tt)
# <__main__.turtle object at 0x0000007c32d67f98>
print
(type
(tt))#
print
(tt.__class__)
# print
(tt.__class__.__name__)
# turtle
tt.climb(
)# 我正在很努力的向前爬...
tt.run(
)# 我正在飛快的向前跑...
tt.bite(
)# 咬死你咬死你!!
# python類也是物件。它們是type的例項
print
(type
(turtle)
)#
【例子】
class
mylist
(list):
pass
lst = mylist([1
,5,2
,7,8
])9)
lst.sort(
)print
(lst)
# [1, 2, 5, 7, 8, 9]
【例子】
class
animal
:def
run(self)
:raise attributeerror(
'子類必須實現這個方法'
)class
people
(animal)
:def
run(self)
:print
('人正在走'
)class
pig(animal)
:def
run(self)
:print
('pig is walking'
)class
dog(animal)
:def
run(self)
:print
('dog is running'
)def
func
(animal)
: animal.run(
)func(pig())
# pig is walking
python 的 self 相當於 c++ 的 this 指標。
【例子】
class
test
:def
prt(self)
:print
(self)
print
(self.__class__)
t = test(
)t.prt(
)# <__main__.test object at 0x000000bc5a351208>
#
類的方法與普通的函式只有乙個特別的區別 —— 它們必須有乙個額外的第乙個引數名稱(對應於該例項,即該物件本身),按照慣例它的名稱是 self。在呼叫方法時,我們無需明確提供與引數 self 相對應的引數。
【例子】
class
ball
:def
setname
(self, name)
: self.name = name
defkick
(self)
:print
("我叫%s,該死的,誰踢我..."
% self.name)
a = ball(
)a.setname(
"球a"
)b = ball(
)b.setname(
"球b"
)c = ball(
)c.setname(
"球c"
)a.kick(
)# 我叫球a,該死的,誰踢我...
b.kick(
)# 我叫球b,該死的,誰踢我...
據說,python 的物件天生擁有一些神奇的方法,它們是物件導向的 python 的一切…
它們是可以給你的類增加魔力的特殊方法…
如果你的物件實現了這些方法中的某乙個,那麼這個方法就會在特殊的情況下被 python 所呼叫,而這一切都是自動發生的…
類有乙個名為__init__(self[, param1, param2…])的魔法方法,該方法在類例項化時會自動呼叫。
感興趣的話,記得去去看第9天的筆記哈~
**於 阿里雲天池python訓練營,特此記錄,以便日後複習
學習Python第8天
物件是類的例項。換句話說,類主要定義物件的結構,然後我們以類為模板建立物件。類不但包含方法定義,而且還包含所有例項共享的資料。在 python 中定義私有變數只需要在變數名或函式名前加上 兩個下劃線,那麼這個函式或變數就會為私有的了。class derivedclassname baseclassn...
python學習筆記 第8天
繼續今天的python學習 昨天我們說到了多執行緒共享資料 全域性變數 那麼今天我們就緊接著來說一下多執行緒不共享資料的使用方式 import threading import time def test1 the number 0 for i in range 100 the number 1 t...
學習python的第8天
10.4儲存資料 模組json 模組json讓你能夠將簡單的python資料結構轉儲到檔案中,並在程式再次執行時載入該檔案中的資料。json.dump 儲存資料,json.dump 要儲存的資料,用於儲存資料的檔案 import json 匯出json模組 numbers 2,3,5,7,11,13...