
Python学习:__repr__和__str__区别
一、
二、
发布日期:2021-05-07 19:49:59
浏览次数:13
分类:技术文章
本文共 828 字,大约阅读时间需要 2 分钟。
文章目录
一、 __repr__
class Name: def __init__(self,name): self.name = name
__repr__
class Name: def __init__(self,name): self.name = name def __repr__(self): return 'Name: %s' % self.name
重构
__repr__
方法后,不管直接输出对象(面向开发者)还是通过print(面向用户)打印的信息都按我们__repr__
方法中定义的格式进行显示了
二、 __str__
此时我们尝试下重构__str__
class Name: def __init__(self,name): self.name = name def __str__(self): return 'Name: %s' % self.name
三、总结
如果要把一个类的实例变成 str,就需要实现特殊方法__str__()
__repr__
和__str__
这两个方法都是用于显示的,__str__
是面向用户的,而__repr__
面向开发者
想要直接输出对象(面向开发者)和使用 print 输入对象都显示的是友好提示除了重构__repr__
,还可以重构__str__
实现
class Name: def __init__(self,name): self.name = name def __str__(self): return 'Name: %s' % self.name __repr__ = __str__
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2025年03月27日 21时37分51秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Idiot 的间谍网络
2019-03-04
MySql索引及使用、实现的数据结构
2019-03-04
初探SSRF漏洞
2019-03-04
pythonBug入门——从零开始学python
2019-03-04
js-禁止右键菜单代码、禁止复制粘贴代码
2019-03-04
SpringBoot中使用Mybatis访问MySQL数据库(使用xml方式)
2019-03-04
$set的使用(视图不能实时更新)
2019-03-04
【SSL】1072砝码称重
2019-03-04
js数据结构--队列--常见操作
2019-03-04
多项式插值法的Python程序
2019-03-04
vue.js常用指令及用法
2019-03-04
vuex的核心概念和运行机制
2019-03-04
SSLOJ1692 USACO 3.2 Magic Squares 魔板&P2730
2019-03-04
暴打算法:王者级数据结构与LeetCode笔记,一路绿灯杀进字节Java岗
2019-03-04
限时开源!公布半小时下载量达10W:阿里大牛出品「MyCat笔记」
2019-03-04
阿里Java全线成长宝典,从P5到P8一应俱全
2019-03-04
计算机系统原理——cachelab 实验1(第一周)
2019-03-04
JAVA初窥-DAY07
2019-03-04
数组--Go语言学习笔记
2019-03-04
Redis (三)——Linux 上安装 Redis
2019-03-04