python3 UDP协议下的socket

---------------------------------------udp_server.py---------------------------------------

#
coding:utf-8 import socket udp_server = socket.socket(type=socket.SOCK_DGRAM) # 创建socket对象,DGRAM:datagram 数据报文,UDP协议通信 ip_port = ("127.0.0.1", 8001) udp_server.bind(ip_port) # 绑定IP和端口号 from_client_msg, client_addr = udp_server.recvfrom(1024) # 接收来自客户端的消息 print("来自客户端的消息:", from_client_msg.decode("utf-8")) server_input = input(">>>: ").strip() udp_server.sendto(server_input.encode("utf-8"), client_addr) # 给客户端发送消息 udp_server.close() # 关闭连接


---------------------------------------udp_client.py---------------------------------------
# coding:utf-8
import socket

udp_client = socket.socket(type=socket.SOCK_DGRAM) # 创建socket对象,DGRAM:datagram 数据报文,UDP协议通信
ip_port = ("127.0.0.1", 8001)
client_input = input(">>>: ").strip()
udp_client.sendto(client_input.encode("utf-8"), ip_port) # 给服务端发送消息
from_server_msg, server_addr = udp_client.recvfrom(1024) # 接收来自服务端的消息,最大为1024B
print("来自服务端的消息:", from_server_msg.decode("utf-8"))
udp_client.close() # 关闭连接


UDP练习的需求是这样的:
1、服务端需要提供的服务有:接收消息(时间格式的字符串)、将我的本地的时间转换成接收到的消息的格式(也就是个时间格式的字符串)、发回给客户端。
2、客户端自行想一下怎么写。

---------------------------------------practice_udp_server.py---------------------------------------
# coding:utf-8
import socket
import time

udp_server = socket.socket(type=socket.SOCK_DGRAM)
ip_port = ("127.0.0.1", 8001)
udp_server.bind(ip_port)
from_client_msg, addr = udp_server.recvfrom(1024)
print("来自客户端的消息:", from_client_msg.decode("utf-8"))
udp_server.sendto(time.strftime("%Y-%m-%d %X").encode("utf-8"), addr)
udp_server.close()



---------------------------------------practice_udp_client.py---------------------------------------
# coding:utf-8
import socket

udp_client = socket.socket(type=socket.SOCK_DGRAM)
ip_port = ("127.0.0.1", 8001)
client_input = input("格式化时间: ").strip()
udp_client.sendto(client_input.encode("utf-8"), ip_port)
from_server_msg, addr = udp_client.recvfrom(1024)
print("来自服务端的消息:", from_server_msg.decode("utf-8"))
udp_client.close()


 

 

转载于:https://www.cnblogs.com/lilyxiaoyy/p/10927264.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值