发布网友 发布时间:2022-04-23 13:41
共3个回答
懂视网 时间:2022-04-07 16:33
encoding是编码的意思,在python中,Unicode类型是作为编码的基础类型。Python encode() 方法以encoding指定的编码格式编码字符串。errors参数可以指定不同的错误处理方案。
encode()方法语法:(推荐学习:Python视频教程)
str.encode(encoding='UTF-8',errors='strict')
参数
encoding -- 要使用的编码,如"UTF-8"。
errors -- 设置不同错误的处理方案。默认为 'strict',意为编码错误引起一个UnicodeError。 其他可能得值有 'ignore', 'replace', 'xmlcharrefreplace', 'backslashreplace' 以及通过 codecs.register_error() 注册的任何值。
返回值
该方法返回编码后的字符串。
以下实例展示了encode()方法的实例:
#!/usr/bin/python str = "this is string example....wow!!!"; print "Encoded String: " + str.encode('base64','strict')
以上实例输出结果如下:
Encoded String: dGhpcyBpcyBzdHJpbmcgZXhhbXBsZS4uLi53b3chISE=
更多Python相关技术文章,请访问Python教程栏目进行学习!
热心网友 时间:2022-04-07 13:41
python问题我来回答你。
首先你要知道的是,字符串在Python内部的表示是unicode(统一码、万国码)编码,很多编程语言都是这么设计的,各个国家通用编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码。
decode的作用是将其他编码的字符串转换成unicode编码,如str1.decode('gb2312'),表示将gb2312编码的字符串str1转换成unicode编码。
encode的作用是将unicode编码转换成其他编码的字符串,如str2.encode('gb2312'),表示将unicode编码的字符串str2转换成gb2312编码。
因此,转码的时候一定要先搞明白,字符串str是什么编码,然后decode成unicode,然后再encode成其他编码。
bytes类型是 Python 3.x版本新增的数据类型,在 Python 2.x 中是不存在的。字符串是以字符为单位进行处理的,bytes类型是以字节为单位处理的。
bytes 只负责以字节序列的形式(二进制形式)来存储数据,至于这些数据到底表示什么内容(字符串、数字、图片、音频等),完全由程序的解析方式决定。
说白了,bytes 只是简单地记录内存中的原始数据,至于如何使用这些数据,bytes 并不在意,你想怎么使用就怎么使用,bytes 并不约束你的行为。
bytes 类型的数据非常适合在互联网上传输,可以用于网络通信编程;bytes 也可以用来存储图片、音频、视频等二进制格式的文件。
举个例子:
b = b'' # 创建一个空的bytes
b = byte() # 创建一个空的bytes
b = b'hello' # 直接指定这个hello是bytes类型
b = bytes('string',encoding='编码类型') #利用内置bytes方法,将字符串转换为指定编码的bytes
b = str.encode('编码类型') # 利用字符串的encode方法编码成bytes,默认为utf-8类型
bytes.decode('编码类型'):将bytes对象解码成字符串,默认使用utf-8进行解码。
热心网友 时间:2022-04-07 14:59
建议你用c语言来做个试验,用写二进制bytes的方式写文件,要求记事本打开后能看到中文,做完试验你就对编码理解了