這是從Dive Into Python 3關於串的部分:Python的字節對象是否也稱爲字符串?
在Python 3,所有的字符串是Unicode字符序列。沒有像用utf-8編碼的Python字符串或編碼爲CP-1252的Python字符串那樣的東西。 「這個字符串是utf-8嗎?」是一個無效的問題。 utf-8是一種將字符編碼爲字節序列的方式。如果你想獲取一個字符串並將其轉換爲一個特定字符編碼的字節序列,Python 3可以幫助你。如果你想要把一串字節變成一個字符串,那麼Python 3也可以幫助你。字節不是字符;字節是字節。人物是一個抽象。字符串是這些抽象的序列。今天
早些時候我用hashlib
模塊並閱讀幫助文本md5
,上面寫着:
返回一個新的MD5哈希對象;可以使用字符串進行初始化。
嗯,它不接受string
- 它接受bytes
對象。
也許我正在讀這個東西太多了,但是如果應該使用幫助文本bytes
來替代它,那麼它會更有意義嗎?或者,人們對字符串和字節使用相同的名稱?
你在看什麼版本的Python文檔? 2.7沒有做出所需的3k區分(顯然是呵呵),但是我有3k的文檔。 (順便說一句,LOK的粉絲?:)) – Skurmedel
現在不記得確切的版本,甚至可能是無法... 3的東西。 LOK搖滾;) – roqvist