编码和解码

  • 编码(encode): unicode -> str
  • 解码(decode): str -> unicode

image.png

Python2

Python2中字符串分为unicode和str

unicode编码成人可读的str

  1. s = u'你好'
  2. # or
  3. s = u'\u4f60\u597d'
  4. print type(s)
  5. # <type 'unicode'>
  6. print repr(s)
  7. # u'\u4f60\u597d'
  8. print s.encode('utf-8')
  9. # 你好

str解码成电脑使用的unicode

  1. s = '你好'
  2. print repr(s.decode('utf-8'))
  3. # u'\u4f60\u597d'

Python3

Python3中unicode和str统一为str,字节型字符串为bytes

image.png