Python 字符串encode()
原文:https://www.studytonight.com/python-library-functions/python-string-encode
编码意味着将 Unicode 转换为一组字节。正如我们所知,在 Python 中数据以 Unicode 存储,但是从安全性的角度来看,我们需要将它们转换成一组字节。这个过程提高了存储字符串的效率。例如,密码在字符串中,所以为了以安全的方式存储它们,我们使用 Python 字符串encode()
方法。
不同的编码方案有:
美国信息交换标准代码
UTF-8(Unicode 转换格式)
ibm039 和更多。
Python 字符串encode()
:介绍
该方法的一般介绍如下:
这是 Python 中的内置方法。
默认情况下, Python 中的字符串以 Unicode 存储,但是我们可以按照提供的编码标准对字符串进行编码;有几种编码方案。
这种方法主要用于将字符串的 Unicode 转换为编码,python 应该支持这种编码。
主要用于字符串的高效存储。
它主要使用指定的编码对字符串进行编码;如果没有指定编码,那么将使用 UTF-8
encode()
的主要应用:需要在数据库中安全存储密码(在字符串中),因此需要来保存字符串的编码版本。
Python 字符串encode()
:语法
下面我们有一个 Python 中字符串encode()
的基本语法:
string_var.encode(encoding, errors)
Python 字符串encode()
:参数
这些参数的描述如下:
- 编码
这用于指示字符串将被编码到的编码类型。它也是一个字符串,主要指定要使用的编码。该参数的默认值为“UTF-8”。
- 错误
当编码失败时,此参数给出一个响应,有六个编码错误响应。基本上,这是一个指定错误方法的字符串。该参数的合法值如下:
backslashreplace
':该错误值使用反斜杠代替无法编码的字符。可以写成errors="backslashreplace"
。ignore
':该值用于忽略不能编码的字符。可以写成errors="ignore"
。namereplace
':该值用于用解释字符的文本替换字符。可以写成errors="namereplace"
。strict
':这是一个默认值,失败时会引发错误。可以写成errors="strict"
。replace
':该值用于将字符替换为问号。可以写成errors="replace"
。xmlcharrefreplace
':该值用于将字符替换为 XML 字符。可以写成errors="xmlcharrefreplace"
。
如果这根弦出现故障encode()
;UnicodeDecodeError
将引发异常。
Python 字符串encode()
:基本示例
下面我们有一个例子来展示encode()
功能的工作情况:
str1 = "Hello and welcome to the world of pythön!"
str2 = str1.encode()
print(str2)
下面给出了相同的输出,您将看到编码形式的输出
b '大家好,欢迎来到大蟒世界\xc3\xb6n!'
Python 字符串encode()
:使用参数的示例
下面有一个代码片段,我们也将在其中使用 encode()函数参数。让我们看看:
str1 = "Hello pythön!!"
print(str1.encode("ascii", "replace"))
相同的输出如下所示:
b'Hello pyth?n 个!!'我不知道
Python 字符串encode()
:使用errors
参数所有值的示例
下面我们有一个代码片段,其中我们将使用不同的误差值,这是encode()
方法的参数之一:
string= "Ståle is my name"
print(string.encode(encoding="ascii",errors="backslashreplace"))
print(string.encode(encoding="ascii",errors="ignore"))
print(string.encode(encoding="ascii",errors="namereplace"))
print(string.encode(encoding="ascii",errors="replace"))
print(string.encode(encoding="ascii",errors="xmlcharrefreplace"))
print(string.encode(encoding="ascii",errors="strict"))
因此,上述代码的输出将是:
b'St\xe5le 是我的名字】 b'Stle 是我的名字】 b ' ST \ \ N {拉丁文小写字母 A WITH RING ABOVE } le 是我的名字' b'St?“乐是我的名字” b ' ST&# 229;le 是我的名字' Traceback(最近一次调用最后一次): File/tmp/sessions/353 CCB 2c a3d5 D1 fc/main . py ",第 8 行,在<模块> print(string . encode(encoding = " ascii ",errors = " strict ") unicodeencodererror:' ascii ' codec 无法编码字符' \xe5 '在位置 2:序数不在范围内(128)
时间就是活生生的例子!
让我们看一下现场的例子,以清楚地了解encode()
方法:
摘要
在本教程中,我们已经了解了什么是编码?不同的编码方案,以及对encode()
方法的详细描述和对encode()
方法参数的深入解释。在我们看到不同的例子后,接着是现场例子。