【python】关于encode(),decode()的一些总结

*编码的发展进程

最初,大家使用的字符串编码是ASCII编码。但是它只对10个数字,26个大小写英文字母,以及一些特殊字符,共计256个,每个字符占一个字节。为了兼容各个国家的一些文字,出现了GBK,GB2312,UTF-8编码等。

其中GBK,GB2312是我国制定的中文编码标准,并规定一个英文字母字符占1字节,中文字符占2字节。

UTF-8则是国际通用的编码格式,它包含了全世界所有国家需要用到的字符,但是规定则是一个英文字母在1字节,中文占3字节。

注意:

Python 3.x以上版本默认采用的是UTF-8的编码格式,好处就是有效的解决了中文乱码的问题,不用单独去编码啦。

在python中,有两种常见的字符串类型,str 和 bytes类型。其中,str是用来表示Unicode字符,bytes用来表示二进制数据。str类型于bytes类型之间转换,就要用到encod() (str 转 bytes),decode() (bytes 转 str)。

encode() 方法

encode() 是字符串类型(str)提供的方法,用于将str类型转换成bytes类型,这个过程也称为“编码”。

语法格式:

str.encode([encoding = 'utf-8',[errors = 'strict'])

注意:[]中括号里面的一般为可选参数,如果不人为传参,则用括号里面的默认参数。各参数表如下

参数 含义
str 表示要进行转换的字符串
encoding = ‘utf-8’ 指定进行采用的编码,该选择默认采用。例如,如果想使用简体中文,可以设置bg2312。当方法中只使用第一个参数时,可以省略前面的"encoding=",直接写编码格式,如:str.encode(“UTF-8”)
errors = ‘strict’ 指定错误处理方式,可选值有:1.strict:遇到非法字符抛出异常;2.ignore:忽略非法字符;3.replace:用"?"代替非法字符;4.xmlcharrefreplace:使用xml的字符引用;该参数默认值为strct

注意:使用encode()方法对原字符进行编码时,不会直接修改原字符串,如果

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值