国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python使用udp實現聊天器功能

2020-02-16 00:01:21
字體:
來源:轉載
供稿:網友

聊天器簡易版

使用udp實現一個簡單的聊天器程序,要求如下:

•在一個電腦中編寫1個程序,有2個功能
•1.獲取鍵盤數據,并將其發送給對方
•2.接收數據并顯示
•并且功能數據進行選擇以上的2個功能調用

例子程序如下:

import socketdef send_message(udp_socket):    # 輸入對方的ip/port    dest_ip = input("請輸入對方的ip:")    dest_port = int(input("請輸入對象的port:"))    # 讀取輸入的數據    send_data = input('請輸入要發送的數據:')    # 發送數據    dest_addr = (dest_ip, dest_port)    udp_socket.sendto(send_data.encode('GBK'), dest_addr)def recv_message(udp_socket):    # 接收數據    recv_data = udp_socket.recvfrom(1000)    print("%s:%s" % (recv_data[1], recv_data[0].decode("utf-8")))  def main():    # 創建套接字    udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)    while True:        send_message(udp_socket)        recv_message(udp_socket)    # 關閉    udp_socket.close()if __name__ == '__main__':    main()

運行程序:

在聊天助手中進行交互:

聊天器靈活版

上面實現的聊天雖然可以使用,但是不太方便,我們希望是發送消息還是接受消息,可以自己選擇,這樣就方便的多。如下的程序運行輸入三個命令來選擇要執行的操作,程序如下:

•1表示發送數據
•2表示接收數據
•0表示退出

import socketdef send_message(udp_socket):    # 輸入對方的ip/port    dest_ip = input("請輸入對方的ip:")    dest_port = int(input("請輸入對象的port:"))    # 讀取輸入的數據    send_data = input('請輸入要發送的數據:')    # 發送數據    dest_addr = (dest_ip, dest_port)    udp_socket.sendto(send_data.encode('GBK'), dest_addr)def recv_message(udp_socket):    # 接收數據    recv_data = udp_socket.recvfrom(1000)    print("%s:%s" % (recv_data[1], recv_data[0].decode("utf-8")))  def main():    # 創建套接字    udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)    while True:        op = input("請輸入您要執行的操作:")        if op == "1":            send_message(udp_socket)        elif op == "2":            recv_message(udp_socket)        elif op == "0":            break        else:            print("您的輸入有誤!")    # 關閉    udp_socket.close()if __name__ == '__main__':    main()            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 普洱| 滕州市| 金阳县| 灵川县| 宾阳县| 汝城县| 平陆县| 宁陕县| 酉阳| 绥化市| 泰和县| 顺义区| 获嘉县| 莲花县| 六安市| 荃湾区| 和平县| 汪清县| 尖扎县| 海丰县| 咸阳市| 体育| 汝阳县| 延长县| 湖州市| 新巴尔虎左旗| 樟树市| 凤山县| 泰安市| 凉城县| 通化市| 区。| 奉贤区| 松滋市| 浦东新区| 江达县| 安龙县| 高雄县| 虞城县| 盐源县| 庐江县|