python 特性和方法同名_Python类:方法与属性同名
我在建一个班暖气。此类的每个实例都具有属性“temperature”。Heating还必须支持将属性“temperature”打印为整数的temperature()方法。在
当我调用temperature()方法时,我得到错误“int”对象不可调用,因为自身温度已定义为整数。在
我怎么解决这个问题?在
代码:class Heating:
"""
>>> machine1 = Heating('radiator kitchen', temperature=20)
>>> machine2 = Heating('radiator living', minimum=15, temperature=18)
>>> machine3 = Heating('radiator bathroom', temperature=22, minimum=18, maximum=28)
>>> print(machine1)
radiator kitchen: current temperature: 20.0; allowed min: 0.0; allowed max: 100.0
>>> machine2
Heating('radiator living', 18.0, 15.0, 100.0)
>>> machine2.changeTemperature(8)
>>> machine2.temperature()
26.0
>>> machine3.changeTemperature(-5)
>>> machine3
Heating('radiator bathroom', 18.0, 18.0, 28.0)
"""
def __init__(self, name, temperature = 10, minimum = 0, maximum = 100):
self.name = name
self.temperature = temperature
self.minimum = minimum
self.maximum = maximum
def __str__(self):
return '{0}: current temperature: {1:.1f}; allowed min: {2:.1f}; allowed max: {3:.1f}'.format(self.name, self.temperature, self.minimum, self.maximum)
def __repr__(self):
return 'Heating(\'{0}\', {1:.1f}, {2:.1f}, {3:.1f})'.format(self.name, self.temperature, self.minimum, self.maximum)
def changeTemperature(self, increment):
self.temperature += increment
if self.temperature < self.minimum:
self.temperature = self.minimum
if self.temperature > self.maximum:
self.temperature = self.maximum
def temperature(self):
return self.temperature
# testen van het programma
if __name__ == '__main__':
import doctest
doctest.testmod()
python 特性和方法同名_Python类:方法与属性同名相关推荐
- python中getattr详解_Python类中方法getitem和getattr详解
请分享高手帮小编详解一下Python中的getattr内置函数没明白这个内置函数得意思.麻烦帮小编讲解一下. 其实这个方法最主要的作用是实现反射机制.也就是说可以通过字符串获取方法实例.这样,你就可以 ...
- python tutorial是什么意思_方法类Python Tutorial(九):类 方法类
题记:写这篇博客要主是加深自己对方法类的认识和总结实现算法时的一些验经和训教,如果有错误请指出,万分感谢. 与其它编程语言比相,Python的类机制加添了最小的新法语和语义.它是C++和Modula- ...
- python 魔法方法常用_Python魔法方法指南
有很多人说学习Python基础之后不知道干什么,不管你是从w3c还是从廖雪峰的教程学习的,这些教程都有一个特点:只能引你快速入门,但是有关于Python的很多基础内容这些教程中都没介绍,而这些你没学习 ...
- 父类可以调用子类的方法吗_python类的继承、多继承及查找方法顺序
讲解类的继承,先用无__init__()方法的类讲解,会更容易理解 分三部分讲解 1.单继承(无__init__()方法) 继承方式:子类(父类): 方法重写:防止执行父类的方法.不想继承父类的某个方 ...
- python类属性初始化_Python类定义、属性、初始化和析构
类的定义,属性和方法概念 方法中self的作用和意义 初始化( __init__ ) 和 析构方法( __del__ ) 类的定义 class 类名 实例 实例名 = 类名() 一个"实例& ...
- java中如何使用反射调用方法以及获得类中的属性
使用反射获取类中的方法: 1):获取方法所在类的字节码对象. 2):获取方法. ------------------------------------------------------------ ...
- python特性高移植性_Python特性图文盘点|微胜教育《九大编程语言全解析》系列...
原标题:Python特性图文盘点|微胜教育<九大编程语言全解析>系列 又到了每周<九大编程语言全解析>的时候了,小伙伴们五一马上到了,想好去哪浪了吗? 今天我们盘Pytho ...
- python中property魔法方法原理_Python类中的魔法方法之 __slots__原理解析
在类中每次实例化一个对象都会生产一个字典来保存一个对象的所有的实例属性,这样非常的有用处,可以使我们任意的去设置新的属性. 每次实例化一个对象python都会分配一个固定大小内存的字典来保存属性,如果 ...
- python getitem方法理解_Python类中方法getitem和getattr详解
1.getitem 方法 使用这个方法最大的印象就是调用对象的属性可以像字典取值一样使用中括号['key'] 使用中括号对对象中的属性进行取值.赋值或者删除时,会自动触发对应的__getitem__. ...
最新文章
- React从入门到精通系列之(1)安装React
- DPDK — RTE_LOG 日志模块
- jaxp的Sax解析
- [译]2019年修炼前端开发者之路
- 【已解决】tomcat报严重: Socket accept failed
- 简而言之Java.io:22个案例研究
- HTTPS-思君如满月,日日减清辉
- CodeM资格赛 Round A 最长树链
- Unity3d中的属性(Attributes)整理【转载】
- 《Ray Tracing in One Weekend》——Chapter 11: Defocus Blur
- enctype=multipart/form-data的表单无法获取表单中除了type=file以外的其他参数 commons-fileupload 获取除file外其他参数...
- squid内存监控脚本
- html地址选择器,你应该知道的五种地址选择器
- 嵌入式工程师需不需要学java_嵌入式开发工程师需要具备哪些素质和技能基础?...
- Python制作音乐播放器
- 《UnityAPI.Animator动画器》(Yanlz+Unity+SteamVR+云技术+5G+AI+VR云游戏+Animator+avatar+CrossFade+Key+立钻哥哥++OK++)
- GPS 原始坐标 (WGS-84) ddmm.mmmm 格式转高德(GCJ)百度(BD09)坐标
- 360发起网民隐私保卫战
- 京东实习笔试——拍卖
- MAC上Chrome浏览器没有声音