import socket
import time
def send_msg(udp_socket):
'''
发送数据
'''
msg = input('请输入要发送的数据:\n')
dest_ip = input('请输入对方的ip地址:\n')
dest_port = int(input('请输入对方端口号:\n'))
udp_socket.sendto(msg.encode('utf-8'),(dest_ip,dest_port))
def resv_msg(udp_socket):
'''
接收数据
'''
# 接收的最大字节
msg = udp_socket.recvfrom(1024)
# 解码
recv_ip = msg[1]
recv_msg = msg[0].decode('utf-8')
print('{}:{}'.format(recv_ip,recv_msg))
def main():
'''
创建UDP套接字
'''
udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
'''
绑定本地信息
'''
udp_socket.bind(('172.20.10.13',7890))
while True:
print('='*30)
print('1:发送数据')
print('2:接收数据')
print('='*30)
op_num = input('请输入要使用的功能')
if op_num == '1':
send_msg(udp_socket)
elif op_num == '2':
resv_msg(udp_socket)
else:
print('输入参数有误2秒退出')
time.sleep(2)
break
if __name__ == "__main__":
main()