Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python3缓冲区/字节操作_Python_Python 3.x_Byte - Fatal编程技术网

Python3缓冲区/字节操作

Python3缓冲区/字节操作,python,python-3.x,byte,Python,Python 3.x,Byte,我必须编写与服务器通信的代码: 服务器将向我发送一个指针。然而,由于socket.recv()的性质,这个指针是一种奇怪的类型,我真的不知道如何使用它。我想要的是能够从返回的指针中添加或减去任意地址,并将它们发送回。由于指针的性质,字节必须完全正确 在过去的一个项目中,我已经使用了字节(字符串“utf-8”),但是这确实把处理这些数据搞砸了。我花了很长时间才弄明白,问题出在编码上,而不是我的输入:如果你想把一个bytes()解析成你可以做算术运算的东西,你可以做 import struct a=

我必须编写与服务器通信的代码:

服务器将向我发送一个指针。然而,由于socket.recv()的性质,这个指针是一种奇怪的类型,我真的不知道如何使用它。我想要的是能够从返回的指针中添加或减去任意地址,并将它们发送回。由于指针的性质,字节必须完全正确


在过去的一个项目中,我已经使用了字节(字符串“utf-8”),但是这确实把处理这些数据搞砸了。我花了很长时间才弄明白,问题出在编码上,而不是我的输入:如果你想把一个
bytes()
解析成你可以做算术运算的东西,你可以做

import struct
a=b'\xca\xfe\xba\xbe' # let's say I just received these bytes
struct.unpack(">I", a)
# -> (3405691582,)
struct.unpack(">I", a)[0]
# -> 3405691582
hex(struct.unpack(">I", a)[0])
# -> '0xcafebabe' - exactly what I expected.

要了解另一种方法以及如何将其应用于网络通信,我将留给您作为练习。

从服务器向客户端发送指针到底有什么用?客户端将如何处理该指针?你想复制心脏出血吗?