str()函数:将值转化为适于人阅读的字符串的形式
repr()函数:将值转化为供解释器读取的字符串形式
1.计算整数和字符串得到的结果不同
整数型:
s=123
print(s) #123
print(repr(s)) #123
print(str(s)==s) #False
print(repr(s)==s) #False
print(len(str(s))) #3
print(len(repr(s))) #3
字符串型:计算长度两者的结果不一致
s="ace"
print(s) #ace
print(repr(s)) #'ace'
print(str(s)==s) #True
print(repr(s)==s) #False
print(len(str(s))) #3
print(len(repr(s))) #5
2.命令行下print和直接输出的结果不同
>>> class C():
... def __repr__(self):
... return "repr C"
... def __str__(self):
... return "str C"
...
>>> c=C()
>>> c
repr C
>>> print(c)
str C
3.类里面,如果自定义__str__方法,str(object)会调用该类的__str__方法