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

