小肥羊要进步

Python网络编程 - UDP编程

Python网络编程 - UDP编程
 
用例1:服务器端和客户端1对多通信
 
服务器端
import socket
 
# 创建服务器端套接字
sk = socket.socket(type=socket.SOCK_DGRAM)
 
# 把地址绑定到套接字
ip_port = ('127.0.0.1',8080)
sk.bind(ip_port)
print(socket.gethostname())
 
while True:
    # 接收客户端信息
    info,addr = sk.recvfrom(1024)
 
    # 打印客户端信息
    print(info.decode('utf-8'))
    print(addr)
 
    # 发送信息
    message = input('Server>>>').encode('utf-8')
    sk.sendto(message,addr)
 
# 关闭服务器套接字
sk.close()
 
客户端1
import socket
 
# 创建客户端套接字
sk = socket.socket(type=socket.SOCK_DGRAM)
ip_port = ('127.0.0.1',8080)
 
while True:
    # 信息发送
    message = input('Client1>>>').encode('utf-8')
    sk.sendto(message,ip_port)
 
    # 信息接收
    info,addr = sk.recvfrom(1024)
 
    # 信息打印
    print(info.decode('utf-8'))
    print(addr)
 
# 关闭客户端套接字
sk.close()                
 
客户端2
import socket
 
# 创建客户端套接字
sk = socket.socket(type=socket.SOCK_DGRAM)
ip_port = ('127.0.0.1',8080)
 
while True:
    # 信息发送
    message = input('Client2>>>').encode('utf-8')
    sk.sendto(message,ip_port)
 
    # 信息接收
    info,addr = sk.recvfrom(1024)
 
    # 信息打印
    print(info.decode('utf-8'))
    print(addr)
 
# 关闭客户端套接字
sk.close()                
 
运行:
在Pycham中打开Terminal1,运行服务器程序,分别和客户端程序1,2聊天。
(python3_for_training) U:\Project\Python_Training\Pytho_Basic>python TcpServerSimple.py
MSI
大家好,我是客户端1
('127.0.0.1', 54612)
Server>>>你好,客户端1
大家好,我是客户端2;
('127.0.0.1', 54613)
Server>>>你好客户端2
 
在Pycham中打开Terminal2,运行客户端程序1,和服务器程序聊天。
(python3_for_training) U:\Project\Python_Training\Pytho_Basic>python TcpClientSimple.py
Client1>>>大家好,我是客户端1
你好,客户端1
('127.0.0.1', 8080)
Client1>>>
 
在Pycham中打开Terminal3,运行客户端程序2,和服务器程序聊天。
(python3_for_training) U:\Project\Python_Training\Pytho_Basic>python TcpClientSimple.py
Client1>>>大家好,我是客户端2
你好,客户端2
('127.0.0.1', 8080)
Client1>>>
 
 
 
 
 
 
 
 
 
 
 
 
 

posted on 2020-10-18 15:56  小肥羊要进步  阅读(155)  评论(0编辑  收藏  举报

导航