str格式的本質含義是“某種編碼格式”。大多數情況下,用引號括起來的字符串是str。這時候string的編碼類型其實就是妳的Python文件的編碼類型。例如,在Windows中,默認情況下使用GBK編碼。
Unicode格式意味著“用Unicode編碼的字符串”。Python在進入2.0版本後正式定義了Unicode string這個奇怪的特性,為了處理太多語言編碼的文本。此後,Python語言中出現了兩種類型的字符串:壹種是傳統的Python字符串(各種模式代碼),另壹種是新興的Unicode。
後來,在Python3.x時代:
str格式的定義改為“Unicode類型的字符串”,即默認情況下,用引號括起來的字符串用Unicode編碼。
而“不是Unicode的某種編碼格式”,比如UTF-8和GBK,這些編碼方式都是定義為字節的,這裏的字節和py2中的str有很多相似之處。