1 #インポートソケットパッケージ 2 インポートソケット 3。 4。 5。 DEF 購入可能(): 6 印刷(" ------ようこそUDPチャットデバイス-------- " ) 。7 印刷(「1.送信情報" ) 8。 プリント(" 2.受信情報" ) 9。 プリント(" 0の出口チャット装置" ) 10 11。 DEFのsend_msg(UDP_SOCKET): 12である DEST_IP =入力(" IP宛先を入力してください」) 13であります int型= dest_portは(INPUT(" 宛先ポートを入力してください:" )) 14 INPUT =(SEND_DATA " 送信するコンテンツを入力してください" ) 15の #1 のsendto(コンテンツ(ターゲットIP、ポート)) 16 udp_socket.sendto(send_data.encode (" GBK " )、(DEST_IP、dest_portは)) 17。 18である 19。 DEFのrecv_msg(UDP_SOCKET): 20 #1 のrecvfrom(最大受信バイト) 21は rece_data = udp_socket.recvfrom(1024 ) 22がある #デコードする、または文字化け 23は、 印刷(" %のS:%Sを"%(Rece_data [1]、rece_data [0] .decode(" GBK " ))) 24 25 26である DEF (メイン): 27の #はソケットオブジェクトの作成 28 UDP_SOCKETを= socket.socket(はsocket.AF_INET、socket.SOCK_DGRAM) 29 #結合ポート 30 #組バインドあるビングは、((IP、ポート))、第1の放電IPが空であることができ、第二ポート 31がある udp_socket.bind((「」、7788 )) 32 一方真: 33です #ウェルカムメニュー 34がある )(購入可能な 35の #が選択 36 (OP = INPUTを"あなたが実行したいコマンドを入力します。" ) 37 [ IF == OP " 1。" : 38です #送信 39 send_msg(UDP_SOCKET) 40 のelif OP == " 2 "を: 41です #情報受信 42はある recv_msg(UDP_SOCKET) 43である のelif = OP = 「0 」: 44です BREAK 45 他: 46は 印刷(「適切な命令を選択してください:」) 47 位ソケットクローズ 48 udp_socket.close() 49 50 もし __name__ == ' __main__ ' : 51 メイン()