淺談python socket函式中,send與sendall的區別與使用方法

NO IMAGE

在python socket程式設計中,有兩個傳送TCP的函式,send()與sendall(),區別如下:

socket.send(string[, flags])  傳送TCP資料,返回傳送的位元組大小。這個位元組長度可能少於實際要傳送的資料的長度。換句話說,這個函式執行一次,並不一定能傳送完給定的資料,可能需要重複多次才能傳送完成。

例子:


data = "something you want to send" 
while True: 
len = s.send(data[len:]) 
if not len: 
break 

socket.sendall(string[, flags])   看懂了上面那個,這個函式就容易明白了。傳送完整的TCP資料,成功返回None,失敗丟擲異常

例子:


data = "something you want to send" 
s.sendall(data) 

以上這篇淺談python socket函式中,send與sendall的區別與使用方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援指令碼之家。

您可能感興趣的文章:

Python Socket實現基於TCP協議的客戶與服務端中文自動回覆聊天功能示例Python Socket實現基於UDP協議的區域網廣播功能示例詳解python3中socket套接字的編碼問題解決Python與Java間Socket通訊例項程式碼python3.5實現socket通訊示例(TCP)python:socket傳輸大檔案示例python通過socket實現多個連線並實現ssh功能詳解