Python 字符串 encode()方法
Python encode() 方法根据提供的编码标准对字符串进行编码。 默认情况下,Python字符串采用unicode形式,但也可以编码为其他标准。
编码是将文本从一种标准编码转换为另一种标准编码的过程。
签名
encode(encoding="utf-8", errors="strict")
参数
- encoding :编码标准,默认为UTF-8
- errors :错误模式,忽略或替换错误消息。
两者都是可选的。默认编码为UTF-8。
错误参数具有默认值严格,并允许其他可能值’ignore’,’replace’,’xmlcharrefreplace’,’backslashreplace’等。
返回类型
它返回一个编码的字符串。
让我们看一些例子来理解encode()方法。
示例1
一个简单的方法,将Unicode字符串编码为UTF-8编码标准。
# Python encode() function example
# Variable declaration
str = "HELLO"
encode = str.encode()
# Displaying result
print("Old value", str)
print("Encoded value", encode)
输出结果:
Old value HELLO
Encoded value b 'HELLO'
示例2
我们正在对一个拉丁字符进行编码
Ë into default encoding.
# Python encode() function example
# Variable declaration
str = "HËLLO"
encode = str.encode()
# Displaying result
print("Old value", str)
print("Encoded value", encode)
输出:
Old value HËLLO
Encoded value b'H\xc3\x8bLLO'
示例3
我们将拉丁字符编码为ASCII,它会抛出一个错误。请参考下面的示例。
# Python encode() function example
# Variable declaration
str = "HËLLO"
encode = str.encode("ascii")
# Displaying result
print("Old value", str)
print("Encoded value", encode)
输出:
UnicodeEncodeError: 'ascii' codec can't encode character '\xcb' in position 1: ordinal not in range(128)
示例4
如果我们想忽略错误,可以将ignore作为第二个参数。
# Python encode() function example
# Variable declaration
str = "HËLLO"
encode = str.encode("ascii","ignore")
# Displaying result
print("Old value", str)
print("Encoded value", encode)
输出:
Old value HËLLO
Encoded value b'HLLO'
示例5
它忽略错误并用问号代替字符。
# Python encode() function example
# Variable declaration
str = "HËLLO"
encode = str.encode("ascii","replace")
# Displaying result
print("Old value", str)
print("Encoded value", encode)
输出:
Old value HËLLO
Encoded value b'H?LLO'