python编码类型互转总结

  1. 只有在unicode下才能将utf-8与gbk互转
  2. unicode是在内存中使用,bytes是文件存储和网络传输时使用

py3和py2对比

  • py3时:
    a=“中国” 和a=u"中国" 是一个意思,都表示str类型unicode存储类型,即默认是unicode存储类型
    c=b"中国" 表示str类型bytes存储类型

  • py2时:
    a=“中国” 和a=b"中国" 是一个意思,表示str类型bytes存储类型,即默认是bytes存储类型
    a=u"中国" 表示str类型unicode存储类型

转换

  • py3
    py3时:
    unicode 类型— encode —> bytes 类型
    示例:
    s1=“hello world !” //s1表示str类型unicode存在类型
    type(s1)
    s2=s1.encode(“utf-8”) //表示把s1转换成str类型bytes存在类型,并赋值给s2
    或s2=s1.encode(“gbk”) //表示把s1转换成str类型bytes存在类型,并赋值给s2
    type(s1)
    type(s2)
    print (s2)
    在这里插入图片描述

  • py2
    py2时:

bytes 类型— decode —> unicode 类型
s1=b"love" // s1表示str类型bytes存在类型
type(s1)
s2=s1.decode(“utf-8”) // 表示把s1转换成str类型unicode存在类型,并赋值给s2
或s2=s1.decode(“gbk”) // 表示把s1转换成str类型unicode存在类型,并赋值给s2
type(s1)
type(s2)
print (s2)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值