python学习——特殊方法__str__的用法
来源:互联网 发布:mac电脑卸载 编辑:程序博客网 时间:2024/06/06 17:01
类中的str方法是在打印类的实例对象时,调用该方法,一般返回一个字符串。例如:
class Rectangle(): def __init__(self,a,b): self.a = a self.b = b def __str__(self): return 'this is a str'rect = Rectangle(3,4)print(rect)
得到结果:
this is a str
也就是说当打印一个类的实例对象时,会自动调用str方法,并返回回来一个字符串。
那么,如果返回的不是一个字符串,会出现什么结果呢?
class Rectangle(): def __init__(self,a,b): self.a = a self.b = b def __str__(self): return (self.a) * (self.b)rect = Rectangle(3,4)print(rect)
结果实际会报错:
TypeError: __str__ returned non-string (type int)
str返回的不是一个字符串类型,是一个整形,因此会报错。
此时,把(self.a) * (self.b)改成str((self.a) * (self.b))就可以了。
class Rectangle(): def __init__(self,a,b): self.a = a self.b = b def __str__(self): return str(self.a) * (self.b))rect = Rectangle(3,4)print(rect)
得到:
12
阅读全文
0 0
- python学习——特殊方法__str__的用法
- python 的特殊方法 __str__和__repr__
- python 的特殊方法 __str__和__repr__
- python中__str__()函数的用法
- python 学习笔记—— __setattr__ __getattr__ __str__
- 学习笔记——Python的特殊方法
- Python学习笔记——特殊方法
- python中__str__, __call__方法
- python __str__和format方法
- python 类的打印__str__
- 如果要把一个类的实例变成 str,就需要实现特殊方法__str__():
- Python学习笔记(二)——特殊方法
- Python 格式化输出 —— %r 与 %s 的区别(__repr__ 与 __str__)
- Python的特殊方法
- Python特殊方法应用学习
- __str__方法
- python 特殊函数的用法
- 学习笔记——内部类的特殊用法
- 算法导论--逆序对
- 学习Linux基本命令60个(上)
- LeetCode题解 week4
- Ubuntu 安装Java和Scala
- Find Minimum in Rotated Sorted Array II
- python学习——特殊方法__str__的用法
- CSS3动画-定位元素层级覆盖问题
- 日记—10.1
- 后缀数组+贪心+隔板法
- 【LCA】洛谷2420[让我们异或吧]题解
- Codeforces 864F Cities Excursions(离线处理+Tarjan)
- Framework学习(四)Launcher启动过程
- LeetCode 0066
- JS总结--------JavaScript常用关键字