Python面向?qū)ο髮崿F(xiàn)一個對象調(diào)用另一個對象操作示例
本文實例講述了Python面向?qū)ο髮崿F(xiàn)一個對象調(diào)用另一個對象操作。分享給大家供大家參考,具體如下:
我先總結(jié)一下python中的類的特點:
1.類中所有的方法的參數(shù)中都必須加self,并且是第一個參數(shù)
2.__init__方法用來初始化對象,也必須加self
3.用__str__方法,方法中有返回值,可以直接用print(對象引用的變量),__str__方法返回什么,print得到的就是什么
4.屬性的賦值,最好用方法封裝起來使用
__str__和__init__方法的舉例:
# -*- coding:utf-8 -*-
#! python3
class Cat:
def __init__(self,new_name,new_age): #初始化對象
self.name = new_name
self.age = new_age
def __str__(self):
return "%s的年齡是:%d"%(self.name,self.age)
def eat(self):
print("貓在吃魚....")
def drink(self):
print("貓在喝可樂...")
tom = Cat("湯姆",40)
print(tom) #這個輸出的結(jié)果就是str返回值的結(jié)果
運行結(jié)果:
湯姆的年齡是:40
一個對象調(diào)用另一個對象:
一個對象調(diào)用另一個對象的屬性可以直接調(diào)用
# -*- coding:utf-8 -*-
#! python3
class Home:
def __init__(self,new_area,new_info,new_addr):
self.area = new_area
self.info = new_info
self.addr = new_addr
self.left_area = new_area
self.contain_items = []
def __str__(self):
msg="房子的總面積是:%d,可用面積是:%d,戶型是:%s,地址是:%s"%(self.area,self.left_area,self.info,self.addr)
msg += "當(dāng)前房子里的物品是%s"%(str(self.contain_items))
return msg
def add_item(self,item):
#self.left_area -= item.area
#self.contain_items.append(item.name)
self.left_area -= item.get_area()
self.contain_items.append(item.get_name())
class Bed:
def __init__(self,new_name,new_area):
self.name = new_name
self.area = new_area
def __str__(self):
return "%s占用的面積是:%d"%(self.name,self.area)
def get_area(self):
return self.area
def get_name(self):
return self.name
fangzi = Home(129,"三室一廳","北京市 朝陽區(qū) 長安街 666號")
print(fangzi)
bed1 = Bed("席木思",4)
fangzi.add_item(bed1)
print(fangzi)
運行結(jié)果:
房子的總面積是:129,可用面積是:129,戶型是:三室一廳,地址是:北京市 朝陽區(qū) 長安街 666號當(dāng)前房子里的物品是[]
房子的總面積是:129,可用面積是:125,戶型是:三室一廳,地址是:北京市 朝陽區(qū) 長安街 666號當(dāng)前房子里的物品是['席木思']
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python面向?qū)ο蟪绦蛟O(shè)計入門與進階教程》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python編碼操作技巧總結(jié)》及《Python入門與進階經(jīng)典教程》
希望本文所述對大家Python程序設(shè)計有所幫助。
相關(guān)文章
利用keras加載訓(xùn)練好的.H5文件,并實現(xiàn)預(yù)測圖片
今天小編就為大家分享一篇利用keras加載訓(xùn)練好的.H5文件,并實現(xiàn)預(yù)測圖片,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01
Python集合中remove()函數(shù)的使用方法詳解
這篇文章主要給大家介紹了關(guān)于python集合中remove()函數(shù)的使用,以及在使用Python集合的remove方法時應(yīng)注意的事項,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下2023-07-07

