「python」"魔法"方法
2017-09-07 10:12
197 查看
"魔法"方法
1. 打印id()
如果把BMW使用print进行输出的话,会看到如下的信息即看到的是创建出来的BMW对象在内存中的地址
2. 定义__str__()
方法
class Car: def __init__(self, newWheelNum, newColor): self.wheelNum = newWheelNum self.color = newColor def __str__(self): msg = "嘿。。。我的颜色是" + self.color + "我有" + int(self.wheelNum) + "个轮胎..." return msg def move(self): print('车在跑,目标:夏威夷') BMW = Car(4, "白色") print(BMW)
总结
在python中方法名如果是__xxxx__()的,那么就有特殊的功能,因此叫做“魔法”方法
当使用print输出对象的时候,只要自己定义了
__str__(self)方法,那么就会打印从在这个方法中return的数据
相关文章推荐
- python魔法方法以及私有化 (来自潭州教育python爬虫的一枚小学员)
- Python中的魔法方法
- Python 魔法方法简介
- 零基础入门学习Python(25):魔法方法(5)定制序列和迭代器
- Python 魔法方法详解
- Python 魔法方法与属性
- Python基础编程(九)魔法方法、属性和迭代器
- <<Python基础教程>>学习笔记 | 第09章 | 魔法方法、属性和迭代器
- 洗礼灵魂,修炼python(37)--面向对象编程(7)—了解魔法方法
- Python美女[从新手到高手]--阅读"见个面问题 HashMap 储存方法"联想
- python "No module named _sysconfigdata_nd"错误解决方法
- 鱼c笔记——Python魔法方法四:描述符(Property的原理)
- 鱼c笔记——Python魔法方法五:定制序列
- python四个魔法方法__len__,__getitem__,__setitem__,__delitem__
- python魔法方法-自定义序列详解
- Python3基础 __str__ print一个类的实例对象的时候 使用的魔法方法
- 洗礼灵魂,修炼python(39)--面向对象编程(9)—魔法方法表
- python 处理中文时出现的错误'ascii' codec can't decode byte 0xe9 in position 0: ordinal not in range(128)" 解决方法
- 一个python实现的有魔法方法(magic method)的单链表(静态链表)
- 一、Python魔法方法 -- 构造和解析