1. 程式人生 > >python基於udp的套接字

python基於udp的套接字

enc client sock python 接受 upper imp 代碼例子 data

1.基於udp的套接字

(1)udp不會產生粘包現象

(2)udp是無鏈接的,先啟動哪一端都不會報錯。

(3)upd是無連接的,所以可以同時多個客戶端跟服務端通信。

2.代碼例子

服務端:

from socket import *

udp_server=socket(AF_INET,SOCK_DGRAM) #創建一個服務器的套接字
udp_server.bind((127.0.0.1,8080)) #綁定一個服務器套接字

while True:
    data,client_addr=udp_server.recvfrom(1024)  #接受消息
    print(data,client_addr)
    udp_server.sendto(data.upper(),client_addr)  
#發送消息

客戶端:

from socket import *

udp_client=socket(AF_INET,SOCK_DGRAM)

while True:
    msg=input(>>: ).strip()
    udp_client.sendto(msg.encode(utf-8),(127.0.0.1,8080))
    data,server_addr=udp_client.recvfrom(1024)
    print(data.decode(utf-8))

python基於udp的套接字