Python每日小结(四)
来源:互联网 发布:js 获取table tr td 编辑:程序博客网 时间:2024/05/18 02:06
1.Python特殊函数__call__()
在Python中,函数其实是一个对象,比如说:
在上面的代码中,由于f可以被调用,所以,f被称为可调用对象。
所有函数都是可调用对象,一个类实例也可以变成一个可调用对象,只需要我们自己去实现一个特殊方法__call__():
我们为类Person实现了__call__函数,从而使得类Person的实例p可以作为函数进行调用
2.__str__和__repr__
直接用例子进行说明:
如果我们不设置__str__函数以及__repr__函数的话,则会得到如上的输出,打印得到的对象并不是很友好,显示的是对象的内存地址。
如果我们设置了__str__函数,则会得到如下结果:
此时我们调用print函数会按照我们指定的输出格式进行输出,但是直接输出对象显示的仍然是对象的内存地址。
那如果我们实现了__repr__函数呢?
此时,我们不论是直接输出对象还是调用print函数,都会得到我们所指定的输出结果,恩,很友好,至少在用户体验上,如果能够和标准库的使用方法一致,那么就最好不过了。
阅读全文
0 0
- Python每日小结(四)
- Python每日小结(一)
- Python每日小结(二)
- Python每日小结(三)
- Python每日小结(五)
- Python每日小结(六)
- Python每日小结(七)
- Python每日小结(八)
- Python每日小结(九)
- Python每日小结(十)
- Python每日小结(十一)
- 每日阅读(四)
- 每日英语(四)
- 每日小结
- 每日小结
- 每日小结
- 每日小结
- 每日一题(四)
- caller和callee的区别
- seo优化很难做的原因
- java泛型--桥方法
- 稀疏矩阵利用三元组相乘(c语言)
- 转:深入学习Java中的字符串,代码点和代码单元
- Python每日小结(四)
- LeetCode--Find All Numbers Disappeared in an Array(找到数组中未出现的数字)
- 模式识别(3)-SVM分类算法
- freeswitch系列四 通过实例学习sip协议的注册、呼叫、挂断流程
- C和C++区别——带有默认值的函数
- 1003. 我要通过!(20)
- 171025-用for语句画正方形【连续第二天】
- 欢迎使用CSDN-markdown编辑器
- Django编写RESTful API(三):基于类的视图