【发布时间】:2021-04-21 23:17:21
【问题描述】:
看了一些文章,我知道字符串字面量涉及编码和解码。 除此之外,在 python 中使用字节文字 b'....' 的任何其他实际好处。
# initialising a String
a = 'abc'
# initialising a byte object
c = b'abc'
谢谢
【问题讨论】:
-
如果您正在调用需要字节参数的函数,使用字节文字而不是使用字符串并调用
.encode()会更简单。 -
这与您使用整数文字而不是写
int("123")的原因相同 -
通过转义,您实际上可以使用具有任何值的字节数组文字。这些将存储为实际字节而不是字符串 - 然后需要对其进行编码。请注意,并非所有字节都需要被编码覆盖,编码错误很容易犯。如果您要存储一个字符串,最好使用十六进制(或 base 64 字符串),但在这种情况下,您也可以简单地转义 b 字符串中的每个字节。
标签: python string byte literals