下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Python encode。和decode。方法:字符串编码转换 前面章节在介绍bytes类型时,已经对encode()和decode()方法的使用做了简单的介 绍,本节将对这2个方法做详细地说明。我们知道,最早的字符串编码是ASCII编码,它仅仅对10个数字、26个大小写英文字 母以及一些特殊字符进行了编码。ASCII码做多只能表示256个符号,每个字符只需要占 用1个字节。随着信息技术的开展,各国的文字都需要进行编码,于是相继出现了 GBK、GB2312、UTF-8 编码等,其中GBK和GB2312是我国制定的中文编码标准,规定英文字符母占用1个 字节,中文字符占用2个字节;而UTF-8是
2、国际通过的编码格式,它包含了全世界所有 国家需要用到的字符,其规定英文字符占用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方法的语法格式如下:s
3、tr.encode(encoding = utf-8/errors=strict)注意,格式中用口括起来的参数为可选参数,也就是说,在使用此方法时,可以使用口中 的参数,也可以不使用。该方法各个参数的含义如表1所示。表1 encode。参数及含义参数含义str表示要进行转换的字符串。encoding 二utf-8指定进行编码时采用的字符编码,该选项默认采用utf-8编码。例如,如果想使用简体中文,可以设置gb2312o当方法中只使用这一个参数时,可以省略前边的encoding一,直接写编码格式,例如str.encode(UTF-8)oerrors =strict指定错误处理方式,其可选择值可以
4、是:strict :遇到非法字符就抛出异常。ignore :忽略非法字符。replace :用替换非法字符。xmlcharrefreplace :使用 xml 的字符弓I用。该参数的默认值为strict。注意,使用encode()方法对原字符串进行编码,不会直接修改原字符串,如果想修改原 字符串,需要重新赋值。例1将str类型字符串C语言中文网转换成bytes类型。 str = C语言中文网 str.encode()bCxe8xafxadxe8xa8x80 xe4xb8xadxe6x96x87xe7xbdx91此方式默认采用UTF-8编码,也可以手动指定其它编码格式,例如: str = C语言
5、中文网” str.encode(GBK)b Cxd 3xefxd lxd4xd 6xd 0 xcexc4xcdxf8Python decode。方法和encode()方法正好相反,decode()方法用于将bytes类型的二进制数据转换为str 类型,这个过程也称为解码。decode()方法的语法格式如下:bytes.decode(encoding = utf-8/errors=strict)该方法中各参数的含义如表2所示。表2 decode。参数及含义参数含义bytes表示要进行转换的二进制数据。encoding = utf-8指定解码时采用的字符编码,默认采用utf-8格式。当方法中只使用
6、这一个参数时,可以省略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 last):File / line 1, in bytes.decodeOUnicodeDecodeError:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年机器人工程师面试题及机械臂设计优化技巧含答案
- 2026河南焦作市市直机关遴选公务员8人考试参考题库及答案解析
- 2026福建厦门市翔安投资集团有限公司招聘2人笔试备考题库及答案解析
- 2026国家统计局仪征调查队招聘辅助调查员1人(江苏)笔试备考题库及答案解析
- 2026湖北恩施州宣恩贡柚生物科技发展有限公司招聘1人笔试备考题库及答案解析
- 2026年玉溪市易门康达医院招募见习人员(20人)考试备考题库及答案解析
- 2026北京工业大学人才引进4人笔试备考题库及答案解析
- 攀枝花学院2025年第五批直接考核招聘高层次人才(36人)考试备考题库及答案解析
- 2026年社交媒体运营团队负责人面试题及答案
- 2026广东阳江市阳春市招聘公益性岗位1人(第一批)考试备考题库及答案解析
- 地质灾害的监测与预警技术
- 虱病护理课件
- 登革热临床诊断与治疗课件
- 村监委申请书
- 【MOOC】财务管理-上海对外经贸大学 中国大学慕课MOOC答案
- 武汉版生命生态安全【武汉版】《生命安全教育》五年级 第8课《远离黄色音像制品和书刊》课件
- 设计元素提取方法及应用
- 青岛版六年级数学上册总复习百分数(一)课件
- 施工重大危险源专项方案
- 2022年山东中医药高等专科学校单招面试试题及答案解析
- 福建省重点建设项目档案验收实施细则
评论
0/150
提交评论