• Python中字符编码及转码


    python 字符编码及转码

    python 默认编码
    • python 2.X 默认的字符编码是ASCII, 默认的文件编码也是ASCII
    • python 3.X 默认的字符编码是unicode,默认的文件编码也是unicode
    • 注意:unicode和utf-8之间可以不需要转换,可以直接互相答应,GBK如果需要和utf-8之间进行转换一定要通过unicode

    首先说说python中二进制,八进制,十进制,十六进制之间的转换

    --------------------------------------------------------------
    # 十进制
    print(100)  #结果:100
    --------------------------------------------------------------
    # 十进制转二进
    print(bin(100))  
    # 结果:0b1100100  0b表示二进制  1100100表示二进制的100
    --------------------------------------------------------------
    # 十进制转八进制
    print(oct(100))
    # 结果:0o144  0o表示八进制  144表示八进制的100
    --------------------------------------------------------------
    # 十进制转16进制
    print(hex(100))
    # 结果:0x64  0x表示十六进制  64表示16进制的100
    --------------------------------------------------------------
    

    ASCII: 占一个字节,英文字母及数字,基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,通用的单字符编码系统
    Unicode(万国码): 两个字节,计算机上使用的字符编码
    UTP-8(可变长的编码): 对Unicode编码的进行了压缩和优化

    python3.x中,默认内存为Unicode编码
    • 字符串转字节:用encode,指定'utf-8'字符集
    • 字节码转字符串: 用decode,指定'utf-8'字符集

    注意:当英文转成字节码时,b''后面还是英文,当中文转成字节码时,b''后面显示十六进制的字节码。注:encode为加密,decode为解密,使用哪种字符集加密就用哪种字符集解密
    基于: UTF-8

    a = 'Miss'
    a = a.encode('utf-8')
    print(a)  # 结果:b'Miss'
    b = '想'
    b = b.encode('utf-8')
    print(b)  # 结果:b'xe6x83xb3'
    b = b.decode('utf-8')
    print(b) # 结果:'想'
    

    基于:GBK

    a = 'Miss'
    a = a.encode('GBK')
    print(a)  # 结果:b'Miss'
    b = '想'
    b = b.encode('GBK')
    print(b)  # 结果:b'xcfxeb'
    b = b.decode('GBK')
    print(b) # 结果:'想'
    
  • 相关阅读:
    限制其他软件的使用时间app
    刚入职状态调整
    每年定投农业银行1万股收益如何
    Swagger增强工具knife4j
    git分支命名
    在库存服务中实现缓存与数据库双写一致性保障方案(三)
    二进制部署1.23.4版本k8s集群3部署架构及根证书签发
    二进制部署1.23.4版本k8s集群5部署Master节点服务
    二进制部署1.23.4版本k8s集群6部署Node节点服务
    二进制部署1.23.4版本k8s集群7安装Harbor
  • 原文地址:https://www.cnblogs.com/Anesthesia-is/p/11503381.html
Copyright © 2020-2023  润新知