1、內建函數str()和repr() 或反引號操作符(``)可以方便地以字符串的方式獲取對象的內容、類型、數值屬性等信息。
2、str()函數得到的字符串可讀性好(故被print調用)
3、repr()函數得到的字符串通常可以用來重新獲得該對象,通常情況下 obj==eval(repr(obj)) 這個等式是成立的。這兩個函數接受一個對象作為其參數,返回適當的字符串。
4、事實上repr()和``做一樣的事情,返回一個對象的“官方”字符串表示。其結果絕大多數情況下(不是所有)可以通過求值運算(內建函數eval())重新得到該對象。
str()則不同,它生成一個對象的可讀性好的字符串表示,結果通常無法用eval()求值,但適合print輸出。
a = 'Hello, world.'
b = str(a)
c = eval(repr(a))
print a==b
print a==c
print str(a) #對用戶友好
print repr(a) # 對python友好
結果如下:
True
False
True
Hello, world.
'Hello, world.'