python3的decode和encode

本文详细介绍了Python3中的字符串编码与解码操作,包括如何将字符串转换为字节码,以及如何将字节码转换回字符串。文中通过实例展示了不同编码方式的应用,如UTF-8和GBK之间的转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

python3默认编码为unicode,由str类型进行表示。二进制数据使用byte类型表示
字符串通过编码转换成字节码,字节码通过解码成为字符串
encode:str –> bytes
decode:bytes – > str
直接上代码:

import sys
print("print1:",sys.getdefaultencoding())
name ="中国"
name = name.encode("utf-8")
print("print2:",type(name))
name = name.decode("utf-8")
name = name.encode("gbk")
print("print4:",type(name))

结果:
这里写图片描述
分析:

  1. python3默认的编码是unicode,utf-8可以看做是unicode的一个扩展集。
  2. gbk在python中可直接转换成为utf-8,如print4所示,参考网址:
    https://www.cnblogs.com/2017Python/articles/6569750.html

字符串转换成字节(encode):


s1  = "中国"
//法1:
s1 = s1.encode('utf-8')

//方2:,缺省也是可以滴
s1 = s1.encode()

//方3:
s1 = s1.encode(encoding='utf-8')

//法4:我对此语句的理解是,现在用bytes(s1,encoding='utf-8')这个方法转换成字符节。原先是按照utf-8进行编码,
s1 =  bytes(s1, encoding='utf-8')

字节转换成字符串(decode):

s1 = "中国"
s1 = s1.encode("utf-8")

//法1:现在的s1是字节类型
str = s1.decode('utf-8')

//法2:其中1是二进制类型,我对此语句的理解是,现在用str(bytes,encoding='utf-8')这个方法转换成字符串。按照utf-8进行编码,
str1 = str(s1, encoding='utf-8')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值