Python UDP網絡編程,流程和其它語言沒有區別,但更簡潔:
#服務器端 server.py
# 導入 socket、sys 模塊
import socket
import sys
# 創建 socket 對象
serversocket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 獲取本地主機名
host = socket.gethostname()
#端口
port = 9999
# 綁定端口號
serversocket.bind((host, port))
print("在主機{} 端口{} 上綁定!".format(host,port))
while True:
# 建立客戶端連接
msg,addr = serversocket.recvfrom(1024)
print ("客戶端%s說: %s" % ( str(addr), msg ))
serversocket.sendto( msg, addr)
#客戶端client.py
# 導入 socket、sys 模塊
import socket
import sys
# 創建 socket 對象
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 獲取本地主機名
host = socket.gethostname()
# 設置端口號
port = 9999
while True:
str = input("輸入發送內容:")
#發送消息
s.sendto( str.encode('utf-8'), (host, port))
# 接收小於 1024 字節的數據
msg = s.recv(1024)
print("服務器: {}".format( msg.decode('utf-8') ))
s.close()
先運行服務器,然後運行兩個客戶端,打印效果:
下圖是兩個客戶端: