在pyqt6的框架中,我试图填充一个缓冲区,该缓冲区将通过socket发送给对等端。我的问题是,我没有得到我期望的十六进制输出。
以下是我所拥有的:
header = [40, 4602, 2023, 9, 1, 11, 22, 30, 59]
content = [65]
message = header + content
buffer = QByteArray()
data_stream = QDataStream(buffer, QIODevice.OpenModeFlag.WriteOnly)
data_stream.setByteOrder(QDataStream.ByteOrder.BigEndian)
for value in message:
data_stream.writeInt32(value)
print(f'buffer: {buffer}')
print(f'length: {buffer.length()}')
列表中的第一个元素,即消息,它是40,因此,我期望类似0x28的东西,但我得到了“(”
这是打印的输出:
buffer: b'\x00\x00\x00(\x00\x00\x11\xfa\x00\x00\x07\xe7\x00\x00\x00\t\x00\x00\x00\x01\x00\x00\x00\x0b\x00\x00\x00\x16\x00\x00\x00\x1e\x00\x00\x00;\x00\x00\x00A'
你知道这是怎么回事吗?,为什么我得到一个“(”?
谢谢