在双方同时运行,可接收消息和发送消息
(UDP)步骤:
1、创建套接字
2、接收/发送 数据
3、关闭套接字
import socket
'''UDP 简易聊天'''
# 发送
def send_msg(udp_socket):
dest_ip = input("请输对方的ip:")
dest_port = int(input("请输入对方的端口号:"))
send_data = input("请输入要发送的消息:")
udp_socket.sendto(send_data.encode("gbk"), (dest_ip, dest_port)) # 以 GBK 编码,发送消息
# 接收
def recv_msg(udp_socket):
recv_data = udp_socket.recvfrom(1024) # 最大接收1024
print("%s : %s" % (str(recv_data[1]), recv_data[0].decode("gbk"))) # 打印接收到的消息
def main():
# 创建套接字
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 绑定信息
udp_socket.bind(("", 8848))
# 循环处理事情
while True:
print("1、发送消息...")
print("2、接收数据...")
print("3、退出...")
cmd = input("请选择:")
if cmd == "1":
# 发送
# 获取要发送的内容
send_msg(udp_socket)
elif cmd == "2":
# 接收并显示
recv_msg(udp_socket)
elif cmd == "3":
break
else:
print("输入有误...")
# 关闭套接字
udp.close()
if __name__ == '__main__':
main()