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/
    欢迎转载收藏,转载请注明来源,谢谢支持!
  • 相关阅读:
    在VS2010下,用QT,创建一个Opencv应用程序
    SNR(信噪比)与 特定分布噪声的关系初探
    Qt学习笔记_FindDialog
    关于reduced rank regression的一些看法
    实时摄像头人眼跟踪: RealTime Tracking Of Human Eyes Using a Webcam
    L1_APG_Tracker实现代码剖析
    CVPR2013 感兴趣论文汇总
    使用PowerDesigner 15对现有数据库进行反向工程(图解教程)(转)
    大数据量高并发的数据库优化
    rtmp和rtsp的区别
  • 原文地址:https://www.cnblogs.com/konggg/p/8945663.html
Copyright © 2011-2022 走看看