浅谈python socket函数中,send与sendall的区别与使用方法

时间:2022-05-12 13:55:47

python socket编程中,有两个发送TCP的函数,send()与sendall(),区别如下:

socket.send(string[, flags])  发送TCP数据,返回发送的字节大小。这个字节长度可能少于实际要发送的数据的长度。换句话说,这个函数执行一次,并不一定能发送完给定的数据,可能需要重复多次才能发送完成。

例子:

?
1
2
3
4
5
data = "something you want to send"
while True:
  len = s.send(data[len:])
  if not len:
    break

socket.sendall(string[, flags])   看懂了上面那个,这个函数就容易明白了。发送完整的TCP数据,成功返回None,失败抛出异常

例子:

?
1
2
3
data = "something you want to send"
 
s.sendall(data)

以上这篇浅谈python socket函数中,send与sendall的区别与使用方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。