server
1. 创建套接字对象
socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
socket.AF_IN: 服务器之间通信使用IPV4
socket.SOCK_DGRAM: 报文socket-UDP
2. 绑定IP和端口
socket.bind(adressTuple)
3. 收发数据
msg, clientAddress = s.recvfrom()
s.sendto(msg, clientAddress)
4. 关闭socket
s.close()
案例:
import socket
# 1. 创建套接字对象
# socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# socket.AF_IN: 服务器之间通信使用IPV4
# socket.SOCK_DGRAM: 报文socket-UDP
# 2. 绑定IP和端口
# socket.bind(adressTuple)
serverAddress = ("localhost", 9001)
s.bind(serverAddress)
# 3. 收发数据
# msg, clientAddress = s.recvfrom()
# s.sendto(msg, clientAddress)
while 1:
msg, clientAddress = s.recvfrom(1024)
print("%s-%d:" % clientAddress, msg.decode("utf8"))
s.sendto(msg.upper(), clientAddress)
# 4. 关闭socket
# s.close()
client
1. 创建套接字对象
socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
socket.AF_IN: 服务器之间通信使用IPV4
socket.SOCK_DGRAM: 报文socket-UDP
2. 收发数据
msg, clientAddress = s.recvfrom()
s.sendto(msg, clientAddress)
3. 关闭socket
s.close()
案例:
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
while 1:
msg = input(">>: ").strip()
if len(msg) == 0:
continue
if msg == "exit":
break
s.sendto(msg.encode("utf8"), ("127.0.0.1", 9001))
msg, serverAddress = s.recvfrom(1024)
print(msg.decode("utf8"))
s.close()