【问题标题】:Significant benefits of using bytes literal in python在 python 中使用字节文字的显着好处
【发布时间】: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


【解决方案1】:

允许在 Internet 上的程序之间传输数据的 Internet 套接字只能处理字节序列。

因此,为了让您的 python 程序通过 Internet 套接字连接向 Internet 上的其他程序发送数据,必须首先将数据编码为字节文字。

同样,通过 Internet 套接字连接发送到 Python 程序的数据总是以编码字节文字的形式出现,在使用之前必须将其解码为常规 Python 字符串。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-10
    • 2016-03-29
    • 2020-09-21
    • 1970-01-01
    相关资源
    最近更新 更多