Python 基础教程

Python 流程控制

Python 函数

Python 数据类型

Python 文件操作

Python 对象和类

Python 日期和时间

Python 高级知识

Python 参考手册

Python 字符串 encode() 使用方法及示例

Python 字符串方法

字符串encode()方法使用指定的编码对字符串进行编码。如果未指定编码,则将使用 UTF-8。

从Python 3.0开始,字符串以Unicode格式存储,即字符串中的每个字符都由一个代码点表示。因此,每个字符串只是Unicode代码点的序列。

为了有效地存储这些字符串,将代码点序列转换为字节集。该过程称为编码

存在各种不同的编码,它们对字符串的处理不同。流行的编码是utf-8ascii等。

使用字符串的encode()方法,您可以将未编码的字符串转换为Python支持的任何编码。默认情况下,Python使用utf-8编码。

encode()方法的语法为:

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

字符串encode()参数

默认情况下,encode()方法不需要任何参数。

它返回字符串的utf-8编码版本。如果发生错误,它将引发UnicodeDecodeError异常。

但是,它需要两个参数:

  • encoding -必须将字符串编码为的编码类型

  • errors-编码失败时的响应。有六种类型的错误响应

    • strict-默认响应,失败时会引发UnicodeDecodeError异常

    • ignore-从结果中忽略无法编码的unicode

    • replace-将无法编码的Unicode替换为问号

    • xmlcharrefreplace-插入XML字符引用而不是无法编码的unicode

    • 反斜杠替换-插入\ uNNNN espace序列而不是无法编码的unicode

    • namereplace-插入\ N {...}转义序列,而不是无法编码的unicode

示例1:编码为默认的Utf-8编码

# unicode 字符串
string = 'pythön!'

# 输出字符串
print('字符串:', string)

# 默认编码为 utf-8
string_utf = string.encode()

# 输出结果
print('编码版本为:', string_utf)

运行该程序时,输出为:

字符串: pythön!
编码版本为: b'pyth\xc3\xb6n!'

示例2:使用错误参数编码

# unicode 字符串
string = 'pythön!'

# 输出 string
print('字符串:', string)

# ignore error
print('编码后的版本 (ignore) :', string.encode("ascii", "ignore"))

# 替换错误
print('编码后的版本 (replace) :', string.encode("ascii", "replace"))

运行该程序时,输出为:

字符串: pythön!
编码后的版本 (ignore) : b'pythn!'
编码后的版本 (replace) : b'pyth?n!'

注意:尝试不同的编码和误差参数。

Python 字符串方法