鱼C论坛

 找回密码
 立即注册
查看: 2219|回复: 3

Python

[复制链接]
发表于 2017-7-10 09:59:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
__str__和__repr__有什么区别啊,大佬们
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-7-10 10:39:55 | 显示全部楼层
http://blog.csdn.net/luckytanggu/article/details/53649156

str应该是为了给人看的,而repr是为了返回给机器的。

我的理解,交互模式下返回的就是__repr__(),而print出来就是__str__()。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-7-10 10:40:50 | 显示全部楼层
简单的说就是输出的型式有所差异。__repr__的输出是给程序员看的,它有更多的原始信息,
__str__是给最终用户的。
以一个字符串为例:
>>> s = 'asd\tfgh\n12345'
>>> s
'asd\tfgh\n12345' #__repr__型式,可以看到字符串中有制表符和换行符
>>> print(s)
asd        fgh 
12345 #__str__型式,显示最终的状态
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2017-7-10 11:30:23 | 显示全部楼层
同意三楼,很清晰。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-2-22 17:34

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表