摘自:改善Python程序的91个建议

 

1. 相同点

  都可以将Python中的对象转换为字符串。

2. 区别

  1. 两者目标不同

    repr() 面向 Python 解释器,其目的是准确性,其返回值表示 Python 解释器内部含义,常作为编程人员 debug 用

    str() 面向用户,其目的是可读性, 返回形式为用户友好性和可读性都较强的字符串类型。

  2. 在解释器中直接输入 a 时默认的是repr() 函数,而 print() 则调用 str() 函数。

  3. 这两个方法分别调用类中的 __str()__ 和 __repr()__ , 一般来说类中都应该定义 __repr()__ 方法,而另外一个则为可选实现方法,

 

posted on 2021-01-07 20:45  雨竹枫  阅读(223)  评论(0编辑  收藏  举报