@r星校長
第2關:類的屬性與例項化
屬性就是對類和物件特徵的描述,外部以屬性來區分不同的類,類具有資料屬性和方法。而由類建立出來的例項-物件,具有它所屬的類的資料屬性和方法。
例如,書本是乙個類,它具有作者、書名、出版社等資料屬性,它還具有銷售這乙個方法。《 python 核心程式設計》就是書本類的乙個物件,它也具有作者、書名、出版社等資料屬性和銷售這乙個方法。本關的任務是讓學習者掌握類的屬性與例項化。
類的資料屬性
class
dataproperty
: thedata =
10
在上面的例子中,thedata
就是類的資料屬性。
類中還有很多特殊屬性,具體如下:
類的方法
類中的方法也稱為函式。python中用關鍵字def
定義乙個方法,後面接方法名,最後接引數。例如:
class
methodexample
:def
themethod
(self)
:print
("這是方法例項"
)
類中的方法一定要通過例項的句點方法去呼叫。例如:
class
methodexample
:def
themethod
(self)
:print
("這是方法例項"
)me = methodexample(
)me.themethod(
)
類的例項化python 使用函式操作符來建立例項物件。例如:
class
methodexample
:def
themethod
(self)
:print
("建立類的例項"
)me = methodexample(
)
在例項化乙個物件後,python 會檢查是否實現了__init__()
方法。如果沒有實現__init__()
方法,則不會做其它的操作,直接返回物件,例項化過程完畢。而__init__()
方法是用來給類本身初始化的,支援帶引數的初始化。例如:
class
book
:def
__init__
(self,bookname,price,author)
: self.bookname = bookname
self.price = price
self.author = author
defsell
(self)
:print
("%s書本的**為%d"
%(self.bookname,
int(self.price)))
book = book(
"python"
,"45"
,"aas"
)book.sell(
)
在上面的例子中,__init__()
是直譯器在建立乙個例項後呼叫的第乙個方法。
class
people
:# 請在下面填入宣告兩個變數名分別為name和country的字串變數的**
########## begin ##########
name =
"name"
country =
"country"
########## end ##########
defintroduce
(self,name,country)
: self.name = name
self.country = country
print
("%s來自%s"
%(name,country)
)name =
input()
country =
input()
# 請在下面填入對類people進行例項化的**,物件為p
########## begin ##########
p = people(
)########## end ##########
p.introduce(name,country)
預期輸入:
jim中國
預期輸出:
jim來自中國
預期輸入:
jane
美國預期輸出:
jane來自美國
在成功的道路上,激情是需要的,志向是可貴的,但更重要的是那毫無情趣的近乎平常的堅守的毅力和勇氣。
Python 入門之類的基礎語法(三)
r星校長 第3關 繫結與方法呼叫 在 python 中,如果用例項去呼叫方法,這種限制就被稱為 python 中的繫結 binging 沒有建立例項時,方法就是未繫結的。呼叫繫結方法 在定義方法時,self總是作為第乙個引數傳遞的。self代表例項本身,self.變數代表呼叫此例項的變數,self....
Python入門學習筆記之類的基礎語法
類中方法的型別 在python中,類的宣告是通過class關鍵字,第一行是class後面接著是類名,類名的開頭通常是大寫,類名後面接著是括號,括號中的內容表示這個類是從哪個繼承成來的,如果沒有合適的繼承類,就使用object類,object類是所有類都會繼承的基類,然後是冒號 第二行一般為類文件字串...
python入門基礎之 類
小白自用筆記,如有錯誤還請指正 類 屬性 方法 類的名稱開頭字母要大寫如 point emailclient。且沒有下劃線 屬性分為類屬性和例項屬性 簡單的說 類屬性 是在類中直接寫的屬性,例項屬性 指在類外重寫的屬性。方法相當於類中的函式 詳見以下示例 class point x 2 類屬性 y ...