Python 3中的str型別物件有點像Python 2中的unicode。Python 3中的str是未編碼的,str有一個encode方法,呼叫這個方法後將產生一個編碼後的byte型別的字串(這有點像Python 2中的str)。而byte型別的字串支援解碼操作。例如:>>> s = "海闊天空">>> hasattr(s, "decode")False>>> bs = s.encode("utf-8")>>> type(bs)<class "bytes">>>> bsb"\xe6\xb5\xb7\xe9\x98\x94\xe5\xa4\xa9\xe7\xa9\xba">>> hasattr(bs, "encode")False>>> bs.decode("utf-8")"海闊天空" 注意:Python 3中str不再具有decode方法,因為它儲存的是“未編碼”的字串。decode操作交由byte完成了。
Python 3中的str型別物件有點像Python 2中的unicode。Python 3中的str是未編碼的,str有一個encode方法,呼叫這個方法後將產生一個編碼後的byte型別的字串(這有點像Python 2中的str)。而byte型別的字串支援解碼操作。例如:>>> s = "海闊天空">>> hasattr(s, "decode")False>>> bs = s.encode("utf-8")>>> type(bs)<class "bytes">>>> bsb"\xe6\xb5\xb7\xe9\x98\x94\xe5\xa4\xa9\xe7\xa9\xba">>> hasattr(bs, "encode")False>>> bs.decode("utf-8")"海闊天空" 注意:Python 3中str不再具有decode方法,因為它儲存的是“未編碼”的字串。decode操作交由byte完成了。