Python-bytes()与struct.pack()的比较
我只是好奇,但自从我学习python以来,我一直在使用Python-bytes()与struct.pack()的比较,python,python-3.x,Python,Python 3.x,我只是好奇,但自从我学习python以来,我一直在使用bytes()将内容转换为字节。直到最近,我才看到struct.pack()。我没有费心学习如何使用它,因为我认为它基本上与bytes()做了相同的事情。但似乎许多人更喜欢使用struct.pack()。为什么?一个比另一个有什么优势 他们做两件不同的事情;比较字节(1234)与结构包(“!H”,1234)。第一个只提供了一个4字节的字符串,表示包含1234个空字节的numberbytes对象;第二个提供了一个两字节的字符串,其中包含整数的(
bytes()
将内容转换为字节。直到最近,我才看到struct.pack()
。我没有费心学习如何使用它,因为我认为它基本上与bytes()
做了相同的事情。但似乎许多人更喜欢使用struct.pack()
。为什么?一个比另一个有什么优势 他们做两件不同的事情;比较字节(1234)
与结构包(“!H”,1234)
。第一个只提供了一个4字节的字符串,表示包含1234个空字节的numberbytes
对象;第二个提供了一个两字节的字符串,其中包含整数的(big-endian)值
(编辑:删除了与Python 2无关的bytes(1234)
)bytes()
的定义按字面意思执行:
返回一个新的“bytes”对象,它是一个不可变的字节序列
0范围内的整数是的,我当时错过了。