# 服务端接收代码
from socket import *
from time import time
s = socket(AF_INET, SOCK_DGRAM)  # 创建UDP套接字
s.bind(('127.0.0.1', 1660))
while True:
    print('准备接收数据,接收中...')
    recv_data = s.recvfrom(1024)
    content = recv_data[0].decode("utf-8")
    print(f'消息接收成功,消息:{content}, 发送方IP:{recv_data[1][0]}, 发送方端口号:{recv_data[1][1]}')
    if content == 'Bye!':
        s.close()  # 关闭UDP套接字连接
        break
print("\n\n数据接收完毕!")# 客户端发送代码
from socket import *
from random import randint
from time import sleep
content = ['Hello World!', '人生苦短,我用Python', 'PEP-8', 'UDP', 'TCP/IP', 'Bye!']
s = socket(AF_INET, SOCK_DGRAM)  # 创建UDP套接字
for data in content:
    # data = input("请输入需要发送的内容:")
    time = randint(2, 5)
    print(f'{time}s后开始发送消息...')
    sleep(time)
    s.sendto(data.encode('utf-8'), ('127.0.0.1', 1660))
    print(f'消息长度:{len(data)}, 消息已发送!')
else:
    print("\n\n数据发送完毕!")