中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用Python實現多任務版的udp聊天器

發布時間:2021-07-21 16:35:19 來源:億速云 閱讀:132 作者:chen 欄目:開發技術

本篇內容主要講解“怎么用Python實現多任務版的udp聊天器”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么用Python實現多任務版的udp聊天器”吧!

一、案例示例

怎么用Python實現多任務版的udp聊天器

二、案例說明

1、編寫一個有2個線程的程序。
2、線程1用來接收數據然后顯示。
3、線程2用來檢測鍵盤數據然后通過udp發送數據。

三、參考代碼

import socket
import threading


def send_msg(udp_socket):
    """獲取鍵盤數據,并將其發送給對方"""
    while True:
        # 1. 從鍵盤輸入數據
        msg = input("\n請輸入要發送的數據:")
        # 2. 輸入對方的ip地址
        dest_ip = input("\n請輸入對方的ip地址:")
        # 3. 輸入對方的port
        dest_port = int(input("\n請輸入對方的port:"))
        # 4. 發送數據
        udp_socket.sendto(msg.encode("utf-8"), (dest_ip, dest_port))


def recv_msg(udp_socket):
    """接收數據并顯示"""
    while True:
        # 1. 接收數據
        recv_msg = udp_socket.recvfrom(1024)
        # 2. 解碼
        recv_ip = recv_msg[1]
        recv_msg = recv_msg[0].decode("utf-8")
        # 3. 顯示接收到的數據
        print(">>>%s:%s" % (str(recv_ip), recv_msg))


def main():
    # 1. 創建套接字
    udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    # 2. 綁定本地信息
    udp_socket.bind(("", 7890))

    # 3. 創建一個子線程用來接收數據
    t = threading.Thread(target=recv_msg, args=(udp_socket,))
    t.start()
    # 4. 讓主線程用來檢測鍵盤數據并且發送
    send_msg(udp_socket)


if __name__ == "__main__":
    main()

到此,相信大家對“怎么用Python實現多任務版的udp聊天器”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

瓦房店市| 财经| 株洲市| 阳春市| 五莲县| 临猗县| 白水县| 罗田县| 教育| 翁牛特旗| 礼泉县| 荃湾区| 伊金霍洛旗| 襄城县| 遂溪县| 喜德县| 迭部县| 定州市| 汽车| 福泉市| 南澳县| 炎陵县| 苍山县| 铁岭市| 景宁| 日喀则市| 大邑县| 姜堰市| 策勒县| 濮阳市| 开原市| 衡南县| 海兴县| 衡阳市| 盈江县| 肥西县| 湛江市| 伊宁县| 昌平区| 修水县| 晋宁县|