Python面向对象实现一个对象调用另一个对象操作示例


Posted in Python onApril 08, 2019

本文实例讲述了Python面向对象实现一个对象调用另一个对象操作。分享给大家供大家参考,具体如下:

我先总结一下python中的类的特点:

1.类中所有的方法的参数中都必须加self,并且是第一个参数

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) #这个输出的结果就是str返回值的结果

运行结果:

汤姆的年龄是:40

一个对象调用另一个对象:

一个对象调用另一个对象的属性可以直接调用

# -*- 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 += "当前房子里的物品是%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,"三室一厅","北京市 朝阳区 长安街 666号")
print(fangzi)
bed1 = Bed("席木思",4)
fangzi.add_item(bed1)
print(fangzi)

运行结果:

房子的总面积是:129,可用面积是:129,户型是:三室一厅,地址是:北京市 朝阳区 长安街 666号当前房子里的物品是[]
房子的总面积是:129,可用面积是:125,户型是:三室一厅,地址是:北京市 朝阳区 长安街 666号当前房子里的物品是['席木思']

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python pass 语句使用示例
Mar 11 Python
Python基础入门之seed()方法的使用
May 15 Python
Python 出现错误TypeError: ‘NoneType’ object is not iterable解决办法
Jan 12 Python
python实现基于SVM手写数字识别功能
May 27 Python
详谈Pandas中iloc和loc以及ix的区别
Jun 08 Python
python高阶爬虫实战分析
Jul 29 Python
Python在图片中插入大量文字并且自动换行
Jan 02 Python
解决Python找不到ssl模块问题 No module named _ssl的方法
Apr 29 Python
Django分组聚合查询实例分享
Apr 29 Python
python requests.get带header
May 05 Python
python 操作mysql数据中fetchone()和fetchall()方式
May 15 Python
Numpy数组的广播机制的实现
Nov 03 Python
Python后台开发Django的教程详解(启动)
Apr 08 #Python
Python3利用print输出带颜色的彩色字体示例代码
Apr 08 #Python
Python定义函数功能与用法实例详解
Apr 08 #Python
详解Python中pandas的安装操作说明(傻瓜版)
Apr 08 #Python
Python下简易的单例模式详解
Apr 08 #Python
Python字符串的常见操作实例小结
Apr 08 #Python
Python面向对象程序设计多继承和多态用法示例
Apr 08 #Python
You might like
如何对PHP程序中的常见漏洞进行攻击
2006/10/09 PHP
通过对服务器端特性的配置加强php的安全
2006/10/09 PHP
PHP的几个常用加密函数
2016/02/03 PHP
Zend Framework教程之资源(Resources)用法实例详解
2016/03/14 PHP
浅谈PHP发送HTTP请求的几种方式
2017/07/25 PHP
PHP四种排序算法实现及效率分析【冒泡排序,插入排序,选择排序和快速排序】
2018/04/27 PHP
动手学习无线电
2021/03/10 无线电
JS与框架页的操作代码
2010/01/17 Javascript
调试Node.JS的辅助工具(NodeWatcher)
2012/01/04 Javascript
Moment.js 不容错过的超棒Javascript日期处理类库
2012/04/15 Javascript
js动态添加onload、onresize、onscroll事件(另类方法)
2012/12/26 Javascript
js 关键词高亮(根据ID/tag高亮关键字)案例介绍
2013/01/21 Javascript
jQuery操作checkbox选择(list/table)
2013/04/07 Javascript
基于javascript 闭包基础分享
2013/07/10 Javascript
jQuery 如何先创建、再修改、后添加DOM元素
2014/05/20 Javascript
点击表单提交时出现jQuery没有权限的解决方法
2014/07/23 Javascript
PHP结合jQuery实现的评论顶、踩功能
2015/07/22 Javascript
JavaScript数组方法大全(推荐)
2016/07/05 Javascript
将鼠标焦点定位到文本框最后(代码分享)
2017/01/11 Javascript
jquery+ajax实现省市区三级联动 (封装和不封装两种方式)
2017/05/15 jQuery
浅谈Vuejs Prop基本用法
2017/08/17 Javascript
vue环境搭建简单教程
2017/11/07 Javascript
vue项目中的webpack-dev-sever配置方法
2017/12/14 Javascript
vue中阻止click事件冒泡,防止触发另一个事件的方法
2018/02/08 Javascript
vue.js使用v-model指令实现的数据双向绑定功能示例
2018/05/22 Javascript
python实现音乐下载的统计
2018/06/20 Python
Python列表推导式与生成器用法分析
2018/08/02 Python
对python xlrd读取datetime类型数据的方法详解
2018/12/26 Python
Python协程 yield与协程greenlet简单用法示例
2019/11/22 Python
TensorFlow:将ckpt文件固化成pb文件教程
2020/02/11 Python
Python3.9又更新了:dict内置新功能
2020/02/28 Python
Python restful框架接口开发实现
2020/04/13 Python
学校欢迎标语
2014/06/18 职场文书
学校端午节活动方案
2014/08/23 职场文书
保护环境建议书作文300字
2015/09/14 职场文书
导游词之阆中古城
2019/12/23 职场文书