python面向对象思路_python面向对象方法
#需求:洗衣機,功能:能洗衣服#1、定義洗衣機類
"""class 類名():
代碼"""
classWasher():defwash(self):print("能洗衣服")#2 創建對象#對象名 = 類名()
haier =Washer()#3、驗證成果#打印haier對象
print(haier)#使用wash功能--實例方法/對象方法 --對象名.wash()
haier.wash()#類:洗衣機,功能:能洗衣服
classWasher():defwash(self):print("洗衣服")print(self)
haier1=Washer()print(haier1) #<__main__.washer object at>
#haier.wash() #洗衣服 <__main__.washer object at>#由于打印對象和打印self得到的內存地址是一樣的,所以self指的是調用該函數的對象
haier2=Washer()print(haier2)#一個類可以創建多個對象;多個對象都調用函數的時候,self地址是不相同的
添加和獲取對象屬性
屬性即是特征,比如:洗衣機的寬度、高度、重量
對象的屬性既可以在類外面添加和獲取,也能在類里面添加和獲取1類外面添加對象屬性#語法 對象名.屬性名 = 值 dg:haier.width = 500
classWasher():defwash(self):print("洗衣服")
haier1=Washer()#添加對象屬性
haier1.width = 400haier1.height= 500
#類外面獲取對象屬性#獲取屬性 對象名.屬性名
print("洗衣機的寬度是:%s"%haier1.width) #洗衣機的寬度是:400
print("洗衣機的高度是:%s"%haier1.height) #洗衣機的高度是:500
print("--------------------------------")#類里面獲取對象屬性#語法: self.屬性名
classmyWasher():defwash(self):print("洗衣服")#獲取對象屬性
defprint_info(self):#self.屬性名
#print(self.width)
print("洗衣機的寬度是:%s"%self.width)print("洗衣機的高度是:%s"%self.height)
my_haier=myWasher()#添加屬性
my_haier.width = 400my_haier.height= 500
#對象調用方法
my_haier.print_info()#魔方方法#在python中,__xx__的函數叫做魔法方法,指的是具有特殊功能的函數
#體驗__init__#__init__()的方法作用:初始化對象#__init__()方法,在創建一個對象時默認被調用,不需要手動調用#__init__(self)中的self參數,不需要開發者傳遞,python解釋器會自動把當前的對象引用傳遞過去
#目標:定義init魔法方法設置初始化屬性,并訪問調用
"""1 定義類:
init魔法方法:width 和 height
添加實例方法:訪問實例屬性
2 創建對象
3 驗證結果
調用實例方法"""
classWasher():def __init__(self):#添加實例屬性
self.width = 500self.height= 800
defprint_info(self):print("洗衣機的寬度是:%s"%self.width)print("洗衣機的高度是:%s"%self.height)
haier=Washer()
haier.print_info()#洗衣機的寬度是:500 洗衣機的高度是:800
#帶參數的__init__()#思考:一個類可以創建多個對象,如何對不同的對象設置不同的初始化屬性呢? 答:傳參數
classWasher():def __init__(self,width,height):#添加實例屬性
self.width =width
self.height=heightdefprint_info(self):print("洗衣機的寬度是:%s"%self.width)print("洗衣機的高度是:%s"%self.height)
haier= Washer(100,200)
haier.print_info()#洗衣機的寬度是:100 洗衣機的高度是:200
__str__()
當使用print輸出對象的時候,默認打印對象的內存地址。如果類定義了__str__方法,那么就會打印從這個方法中return的數據classWasher():def __init__(self):
self.width= 300
def __str__(self):return '解釋說明:類的說明或對象狀態的說明'haier=Washer()print(haier) #解釋說明:類的說明或對象狀態的說明
#__del__()#當刪除對象時,python解釋器也會默認調用__del__()方法
classWasher():def __init__(self):
self.width= 300
def __del__(self):print("對象已經刪除")
haier= Washer() #對象已經刪除
#del haier
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的python面向对象思路_python面向对象方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 碰一碰支付是什么意思
- 下一篇: 支付宝财富日上线提醒,这次会为用户带来什