str和repr的区别是什么

字符串的表示方法中,有str和repr
那么,同为基础编程语法,str和repr的区别有哪些?

1.str编译是人类可读的。
而repr 是python解释器可读的。

2.str 的输出追求可读性,输出格式要便于理解,适合用于输出内容到用户终端。
repr的输出追求明确性,除了对象内容,还需要展示出对象的数据类型信息,适合开发和调试阶段使用。

3.str和repr都是多态函数,适用于任何对象。
repr调用零参数:half.repr()

4.调用repr的结果是python打印交互会话
调用str的结果是python打印函数。
输出 “fraction(1,2)
str调用零参数:half.str()
输出 ”1/2"