文本总是unicode字符集,用str类型表示。
二进制数据则由bytes表示。(通过socket在网络上传输数据时必须要用二进制格式)
 
Python不会以任何隐式的方式混用str和bytes,所以我们不能在代码中拼接字符串和字节包
 
当然字符串和字节,是可以被相互转换的。
借用一个其他的图来说明转换关系:
Python3中的Bytes和str之间的关系
Python3中的Bytes和str之间的关系
string 通过encode 编码成 bytes 类型,而bytes格式的数据又可以通过decode来解码成str类型。
 
encode 用来对string格式个数据进行编码:
str = '你好'
str.encode('UTF-8') -->表示源数据是什么格式的,不指定的话,默认为UTF-8
b'\xe4\xbd\xa0\xe5\xa5\xbd'

 

 
decode 用来对bytes格式的数据进行解码:
str = b'\xe4\xbd\xa0\xe5\xa5\xbd'
str.decode('UTF-8') -->表示把二进制数据解释成 什么格式的数据(默认UTF-8,待测)

 

 

相关文章:

  • 2022-01-16
  • 2021-10-18
  • 2022-01-20
  • 2022-01-11
  • 2021-10-02
猜你喜欢
  • 2021-08-13
  • 2021-05-30
  • 2021-11-19
  • 2021-07-26
  • 2022-12-23
相关资源
相似解决方案