import socket
import threading
def recv_msg(udp_socket):
"""接收資料並顯示"""
# 接收資料
while true:
recv_data = udp_socket.recvfrom(1024)
print(recv_data)
def send_msg(udp_socket, dest_ip, dest_port):
"""傳送資料"""
# 傳送資料
while true:
send_data = input("輸入要傳送的資料:")
udp_socket.sendto(send_data.encode("utf-8"), (dest_ip, dest_port))
def main():
"""完成udp聊天器的整體控制"""
# 1. 建立套接字
udp_socket = socket.socket(socket.af_inet, socket.sock_dgram)
# 2. 繫結本地資訊
udp_socket.bind(("", 7890))
# 3. 獲取對方的ip
dest_ip = input("請輸入對方的ip:")
dest_port = int(input("請輸入對方的port:"))
# 4. 建立2個執行緒,去執行相應的功能
t_recv = threading.thread(target=recv_msg, args=(udp_socket,))
t_send = threading.thread(target=send_msg, args=(udp_socket, dest_ip, dest_port))
t_recv.start()
t_send.start()
if __name__ == "__main__":
main()
python使用多執行緒實現UDP聊天器
import socket import threading defsend msg udp socket,dest ip,dest port 傳送資料 while true send data input 請輸入要傳送的資料 udp socket.sendto send data.encode u...
UDP聊天小程式 多執行緒(Python)
本程式使用了網路測試工具作為另一端聊天工具,自己寫程式實現與網路測試工具的聊天,使用的是本地位址127.0.0.1,也可開一虛擬機器。本專案主要 使用socket進行資訊傳輸 dest ip input 輸入對方ip dest port int input 輸入對方埠 send data input...
UDP聊天小程式 多執行緒(Python)
import socket defsend msg udp socket dest ip input 輸入對方ip dest port int input 輸入對方埠 send data input 輸入訊息 udp socket.sendto send data.encode utf 8 dest...