zoukankan      html  css  js  c++  java
  • Day1 字符编码及编码函数

    ord() 函数
      获取字符的整数表示
    chr() 函数
      把整数编码转换为对应字符

    '十六进制编码十六进制编码' 可以将字符的整数编码使用十六进制的方式这样写


    Python字符串类型为str,在内存中以unicode表示,一个字符对应若干个字节。如果要保存或传输,就需要把str变为以字节为单位的bytes。 Python对bytes类型的数据用带b前缀的单引号或双引号表示, 如 b'ABC'。
    虽然a = 'ABC' 和 a1 = b'ABC' 显示得一样,但是bytes的每个字符只占用一个字节。

    encode()
      以Unicode表示的str 通过encode() 函数可以编码为指定字符编码的bytes , 如:
        'ABC'.encode('ascii')
        '篳昂'.encode('utf-8')
        '篳昂'.encode('GBK')

    decode()
      反过来,将bytes变为str,就需要用到decode()函数了。
        b'ABC'.decode('ascii')
        b'xe7xafxb3xe6x98x82'.decode('utf-8')
      如果bytes数据中包含无法解码的字节,会报错。如果只有小部分无效字节,可以传入errors='ignore'忽略错误 , 如:
        b'xe7xafxb3xe6x98'.decode('utf-8',errors='ignore')

    len()
      计算str包含多少个字符
        len('ABCDERF')
        len('这是一行中文')
      计算bytes包含多少个字节
        len(b'ABC')
        len(b'xe7xafxb3xe6x98x82')

    例子:
        >>> st = '这是一行中文'
        #len计算str包含多少个字符
        >>> len(st)
        6
        #len计算str转换为bytes后,包含多少个字节。utf-8编码时,一个中文字符占用3个字节
        >>> len(st.encode('utf-8'))
        18

    个个原创文章

    欢迎讨论
    https://www.cnblogs.com/konggg/
    欢迎转载收藏,转载请注明来源,谢谢支持!
  • 相关阅读:
    自适应行高
    IOS各类问题
    KVC
    数据模型的构建及懒加载数据
    NSBundle
    九宫格布局获取行/列索引
    QLineEdit
    QLabel
    排序算法
    SpringBoot配置文件-yaml
  • 原文地址:https://www.cnblogs.com/konggg/p/8945663.html
Copyright © 2011-2022 走看看