這篇文章主要介紹“Python中的類的定義和用法”,在日常操作中,相信很多人在Python中的類的定義和用法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Python中的類的定義和用法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
1、類的定義
2、創建對象
3、繼承
創建一個rectangle.py文件,并在該文件中定義一個Rectangle類。在該類中,__init__表示構造方法。其中,self參數是每一個類定義方法中的第一個參數(這里也可以是其它變量名,但是Python常用self這個變量名)。當創建一個對象的時候,每一個方法中的self參數都指向并引用這個對象,相當于一個指針。在該類中,構造方法表示該類有_width和_height兩個屬性(也稱作實例變量),并對它們賦初值1。
__str__方法表示用字符串的方式表示這個對象,方便打印并顯示出來,相當于Java中的類重寫toString方法。其中,__init__和__str__是類提供的基本方法。
class Rectangle:
# 構造方法
def __init__(self, width=1, height=1):
self._width = width
self._height = height
# 狀態表示方法
def __str__(self):
return ("Width: " + str(self._width)
+ "\nHeight: " + str(self._height))
# 賦值方法
def setWidth(self, width):
self._width = width
def setHeight(self, height):
self._height = height
# 取值方法
def getWidth(self):
return self._width
def getHeight(self):
return self._height
# 其它方法
def area(self):
return self._width * self._height新建一個Test.py文件,調用rectangle模塊中的Rectangle的類。
import rectangle as rec r = rec.Rectangle(4, 5) print(r) print() r = rec.Rectangle() print(r) print() r = rec.Rectangle(3) print(r)
接著輸出結果:

打印Rectangle類的對象直接調用了其中的__str__方法。上圖展示了初始化Rectangle對象時,構造方法中參數的三種不同方式。
創建一個對象有以下兩種形式,其偽代碼表示為:
1)objectName = ClassName(arg1,arg2,…)
2)objectName = moduleName.ClassName(arg1,arg2,…)
變量名objectName表示的變量指向該對象類型。
如果往父類中增加屬性,子類必須先包含刻畫父類屬性的初始化方法,然后增加子類的新屬性。偽代碼如下:
super().__ init __ (parentParameter1,…,parentParameterN)
新建一個square.py文件:
import rectangle as rec
class Square(rec.Rectangle):
def __init__(self, square, width=1, height=1):
super().__init__(width, height)
self._square = square
def __str__(self):
return ("正方形邊長為:" + str(self._width) +
"\n面積為:" + str(self._square))
def isSquare(self):
if self._square == self.getWidth() * self.getWidth():
return True
else:
return False
s = Square(1)
print(s)
print(s.isSquare())
s = Square(2)
print(s)
print(s.isSquare())輸出:

到此,關于“Python中的類的定義和用法”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。