repr() 輸出對 Python比較友好,而str()的輸出對用戶比較友好。雖然如此,不少狀況下這三者的輸出仍然都是徹底同樣的.函數
內建函數str()和repr()或反引號操做符(``)能夠方便地以字符串的方式獲取對象的內容、類型、數值屬性等信息。str()函數獲得的字符串可讀性好,而repr()函數獲得的字符串一般能夠用來從新得到該對象,一般狀況下obj==eval(repr(obj)) 這個等式是成立的。這兩個函數接受一個對象做爲其參數,返回適當的字符串。spa
儘管str(),repr()和``運算在特性和功能方面都很是類似,事實上repr()和``作的是徹底同樣的事情,它們返回的是一個對象的「官方」字符串表示,也就是說絕大多數狀況下能夠經過求值運算(使用內建函數eval())從新獲得該對象,但str()則有所不一樣。str()致力於生成一個對象的可讀性好的字符串表示,它的返回結果一般沒法用於eval()求值,但很適合用於print語句輸出。須要再次提醒的是,並非全部repr()返回的字符串都可以用 eval()內建函數獲得原來的對象。也就是說 repr() 輸出對 Python比較友好,而str()的輸出對用戶比較友好。雖然如此,不少狀況下這三者的輸出仍然都是徹底同樣的。orm