python类中的__str__以及__repr__
程序员文章站
2023-11-21 22:55:58
一.\_\_str\_\_ 打印时触发 二.\_\_ repr\_\_ str函数或者print函数 obj.__str__() repr或者交互式解释器 obj.__repr__() str函数或者print函数如果\_\_str\_\_没有被定义,那么就会使用\_\_repr\_\_来代替输出 ......
一.__str__
- 打印时触发
class a: def __str__(self): #打印时候执行的代码块 return 'ok' # 如果不返回字符串类型,则会报错
print(a()) #相当于 print(a().__str__()) # 打印的时候就是在打印返回值
二.__ repr__
- str函数或者print函数--->obj.__str__()
- repr或者交互式解释器--->obj.__repr__()
- str函数或者print函数如果__str__没有被定义,那么就会使用__repr__来代替输出
- str函数或者print函数如果__str__被定义,那么__repr__就不会执行
- 注意:这俩方法的返回值必须是字符串,否则抛出异常
上一篇: js验证小数或者数字
下一篇: 用Python构造ARP请求、扫描、欺骗