信息技术:71Python encode和decode方法:字符串编码转换.docxVIP

信息技术:71Python encode和decode方法:字符串编码转换.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 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

文档评论(0)

艺心论文信息咨询 + 关注
官方认证
文档贡献者

该用户很懒,什么也没介绍

认证主体成都艺心风尚电子商务有限公司
IP属地四川
统一社会信用代码/组织机构代码
91510100MA6CA54M2R

1亿VIP精品文档

相关文档