str()函數的目的是以人類可讀的形式返回返回值的表示形式。repr()函數的目的是產生壹個解釋器可讀的表示(或者,如果沒有等價的語法,它將導致壹個語法錯誤)。對於那些對人類沒有特殊表示的對象,str()會返回repr()的值。許多值,如數字或列表和字典結構,對於任何函數都返回相同的表示。字符串,在特殊情況下,有兩種不同的表示。
為了避免用戶為了保存復雜的數據類型而頻繁編寫調試代碼,Python提供了壹個標準模塊,叫做pickle。這是壹個令人難以置信的模塊,它可以接受幾乎任何Python對象(甚至壹些Python代碼)並將其轉換為字符串表示。這個過程叫做酸洗。從字符串表示形式重建對象稱為解拾取。在酸洗和解包之間,對象的字符串表示可能已經存儲在文件或數據中,或者通過網絡發送到壹些遠程機器。