- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Python encode。和decode。方法:字符串编码转换 前面章节在介绍bytes类型时,已经对encode()和decode()方法的使用做了简单的介 绍,本节将对这2个方法做详细地说明。
我们知道,最早的字符串编码是ASCII编码,它仅仅对10个数字、26个大小写英文字 母以及一些特殊字符进行了编码。ASCII码做多只能表示256个符号,每个字符只需要占 用1个字节。
随着信息技术的开展,各国的文字都需要进行编码,于是相继出现了 GBK、GB2312、UTF-8 编码等,其中GBK和GB2312是我国制定的中文编码标准,规定英文字符母占用1个 字节,中文字符占用2个字节;而UTF-8是国际通过的编码格式,它包含了全世界所有 国家需要用到的字符,其规定英文字符占用1个字节,中文字符占用3个字节。
Python 3.x默认采用UTF-8编码格式,有效地解决了中文乱码的问题。
在Python中,有2种常用的字符串类型,分别为str和bytes类型,其中str用来表 示Unicode字符,bytes用来表示二进制数据。str类型和bytes类型之间就需要使用 encode()和decode()方法进行转换。
Python encode。方法encode()方法为字符串类型(str)提供的方法,用于将str类型转换成bytes类型,这 个过程也称为编码。
encodeQ方法的语法格式如下:
str.encode([encoding = utf-8][/errors=strict])注意,格式中用口括起来的参数为可选参数,也就是说,在使用此方法时,可以使用口中 的参数,也可以不使用。
该方法各个参数的含义如表1所示。
表1 encode。参数及含义
参数含义
str
表示要进行转换的字符串。
encoding 二
utf-8
指定进行编码时采用的字符编码,该选项默认采用utf-8编码。例如,
如果想使用简体中文,可以设置gb2312o
当方法中只使用这一个参数时,可以省略前边的encoding一,直接
写编码格式,例如str.encode(UTF-8)o
errors =
strict
指定错误处理方式,其可选择值可以是:
strict :遇到非法字符就抛出异常。
ignore :忽略非法字符。
replace :用替换非法字符。
xmlcharrefreplace :使用 xml 的字符弓I用。
该参数的默认值为strict。
注意,使用encode()方法对原字符串进行编码,不会直接修改原字符串,如果想修改原 字符串,需要重新赋值。
[例1]将str类型字符串C语言中文网转换成bytes类型。
str = C语言中文网 str.encode()
bC\xe8\xaf\xad\xe8\xa8\x80\xe4\xb8\xad\xe6\x96\x87\xe7\xbd\x91此方式默认采用UTF-8编码,也可以手动指定其它编码格式,例如:
str = C语言中文网” str.encode(GBK)
b C\xd 3\xef\xd l\xd4\xd 6\xd 0\xce\xc4\xcd\xf8Python decode。方法
和encode()方法正好相反,decode()方法用于将bytes类型的二进制数据转换为str 类型,这个过程也称为解码。
decode()方法的语法格式如下:
bytes.decode([encoding = utf-8][/errors=strict])该方法中各参数的含义如表2所示。
表2 decode。参数及含义
参数含义
bytes
表示要进行转换的二进制数据。
encoding = utf-8
指定解码时采用的字符编码,默认采用utf-8格式。当方法中只使
用这一个参数时,可以省略encoding-,直接写编码方式即可。
注意,对bytes类型数据解码,要选择和当初编码时一样的格式。
errors = strict
指定错误处理方式,其可选择值可以是:
strict :遇到非法字符就抛出异常。
ignore :忽略非法字符。
replace :用替换非法字符。
xmlcharrefreplace :使用 xml 的字符弓I用。
该参数的默认值为strict
[例2] str=C语言中文网”
bytes二str.encode。
bytes.decode()C语言中文网’
注意,如果编码时采用的不是默认的UTF-8编码,那么解码时要选择和编码时一样的格式, 否那么会抛出异常,例如:
str=C语言中文网” bytes = str.encode(GBK)
bytes.decode() #默认使用UTF-8编码,会抛出以下异常Traceback (most recent call l
您可能关注的文档
- 农商银行零星维修工程专业化水平、诚信建设、品牌建设、服务能力.docx
- 农业生产社会化服务项目实施方案.docx
- 农业专题练习.docx
- 写给医院医生及护士长的感谢信十篇.docx
- 写给医院医生及护士长的感谢信五篇范例.docx
- 写给医院医生及护士长的感谢信五篇例文.docx
- 写给医院全体医护人员感谢信十篇范文.docx
- 写给医院全体医护人员感谢信十篇模板.docx
- 写给医生的感谢信十篇范例.docx
- 写给医生的感谢信十篇例文.docx
- 信息技术:6Python能干什么,Python的应用领域.docx
- 信息技术:62Python join方法:合并字符串.docx
- 信息技术:4Python的特点(优点和缺点).docx
- 信息技术:47Python list列表删除元素(4种方法).docx
- 信息技术:42Python三目运算符(三元运算符)用法详解.docx
- 信息技术:37Python算术运算符及用法详解.docx
- 信息技术:25Python变量的定义和使用.docx
- 信息技术:2020学年第二学期八年级下信息技术期末测评试题卷.docx
- 信息技术:137什么是模块,Python模块化编程(入门必读).docx
- 信息技术:131Python try except异常处理详解(入门必读).docx
文档评论(0)