str字符串 encoding( ) 方法

描述

encode()
方法以指定的编码格式编码字符串。errors参数可以指定不同的错误处理方案。

编码方法encoding()

语法

encode()方法语法:

str.encode(encoding='UTF-8',errors='strict')

描述

  encode()
方法以指定的编码格式编码字符串,默认编码为
‘utf-8’。将字符串由string类型变成bytes类型。

  对应的解码方法:bytes
decode() 
方法。

参数

  • encoding — 要使用的编码,如: UTF-8。
  • errors — 设置不同错误的处理方案。默认为
    ‘strict’,意为编码错误引起一个UnicodeError。 其他可能得值有 ‘ignore’,
    ‘replace’, ‘xmlcharrefreplace’, ‘backslashreplace’ 以及通过
    codecs.register_error() 注册的任何值。

语法

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

  • str是表示需要编码的字符串,并且是个string类型。
  • encoding
    — 可选参数,要使用的编码方案,默认编码为 ‘utf-8’。
  • errors —
    可选参数,设置不同错误的处理方案。默认为
    ‘strict’,意为编码错误引起一个UnicodeError。 其他可能得值有 ‘ignore’,
    ‘replace’, ‘xmlcharrefreplace’, ‘backslashreplace’ 以及通过
    codecs.register_error() 注册的任何值。

返回值

该方法返回编码后的字符串,它是一个 bytes 对象。

返回值

  该方法返回编码后的字符串,它是一个
bytes 对象,这个字节对象是用于下面的解码用的。

实例

以下实例展示了encode()方法的实例:

#!/usr/bin/python3

str = "菜包python";
str_utf8 = str.encode("UTF-8")
str_gbk = str.encode("GBK")

print(str)

print("UTF-8 编码:", str_utf8)
print("GBK 编码:", str_gbk)

print("UTF-8 解码:", str_utf8.decode('UTF-8','strict'))
print("GBK 解码:", str_gbk.decode('GBK','strict'))

以上实例输出结果如下:

菜包python
UTF-8 编码: b'xe8x8fx9cxe5x8cx85python'
GBK 编码: b'xb2xcbxb0xfcpython'
UTF-8 解码: 菜包python
GBK 解码: 菜包python

 

官方文档解释:

str.``encode(encoding=”utf-8″errors=”strict”)

  Return an encoded version of the string as a bytes object.
Default encoding is 'utf-8'errors may be given to set a different
error handling scheme. The default for errors is 'strict', meaning
that encoding errors   raise
UnicodeError.
Other possible values
are 'ignore''replace''xmlcharrefreplace''backslashreplace' and
any other name registered
via codecs.register_error(),
see section Error
Handlers.
For a list   of possible encodings, see section Standard
Encodings.

  Changed in
version 3.1: Support for keyword arguments added.


解码方法decode()

  decode()
方法以 encoding 指定的编码格式来解码字符串。默认编码规则是encoding=‘utf-8’

发表评论

电子邮件地址不会被公开。 必填项已用*标注