实现功能: 两个用户之间可以互发信息,解决了局限的单收单发信息。
import threading
import socket
def rec(udp_socket):
# 接受数据
while True:
udp_accept = udp_socket.recvfrom(1024)
print(udp_accept.decode('utf-8'))
def send(udp_socket):
# 发送数据
while True:
udp_input = input('请输入内容:')
udp_socket.sendto(udp_input.encode('utf-8'), ('', 1111)) # 绑定对方的ip和端口号
def main():
# 创建套接字
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 绑定本机ip和端口号
udp_socket.bind(('', 8080))
t1 = threading.Thread(target=rec, args=(udp_socket,))
t2 = threading.Thread(target=send, args=(udp_socket,))
t1.start()
t2.start()
if __name__ == '__main__':
main()