欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python中的bytes

程序员文章站 2022-05-11 14:46:22
bytes_lst = [ ('创建bytes',), ('bytes可哈希',), ('编码与解码',), ('常见编码类型',), ('ord() 与 chr()',), ] 创建bytes >>>b = bytes('hi', 'utf-8') >>>type(b)

bytes_lst = [

  ('创建bytes',),

  ('bytes可哈希',),

  ('编码与解码',),

  ('常见编码类型',),

  ('ord() 与 chr()',),

]

 

创建bytes

  >>>b = bytes('hi', 'utf-8')

  >>>type(b)

  <class 'bytes'>

bytes可哈希

  >>> hash(b'hi')

  -4078898686365756139

编码与解码

  >>>b = 'hi'.encode('utf-8')

  >>>type(b)

  <class 'bytes'>

  >>>s = b.decode('utf-8')

  >>>type(s)

  <class 'str'>

常见的编码类型

  (ps: python3.6.2)

  ascii

    1个英文字符 == 1个字节 == 8位

      >>>b = 'a'.encode('ascii')

      >>>len(b)

      1

  utf-8

    1个英文字符 == 1个字节 == 8位

    1个中文字符 == 3个字节 == 24位

      >>>b = 'a'.encode(‘utf-8’)

      >>>len(b)

      1

      >>>b = '湛'.encode('utf-8')

      >>>len(b)

      3

  gbk

    1个英文字符 == 1个字节 == 8位

    1个中文字符 == 2个字节 == 16位

      >>>b = 'a'.encode('gbk')

      >>>len(b)

      1

      >>>b = '湛'.encode('gbk')

      >>>len(b)

      2

ord() 与 chr()

  >>>import sys

  >>>sys.getdefaultencoding()

  'utf-8'

  >>>ord('a')

  97

  >>>chr(97)

  'a'