1. 程式人生 > >socket (UDP)簡易聊天(python)

socket (UDP)簡易聊天(python)

在雙方同時執行,可接收訊息和傳送訊息
(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()