欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實(shí)現(xiàn)多任務(wù)版的udp聊天器

 更新時(shí)間:2021年07月21日 14:42:05   作者:不染-何程龍  
這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)多任務(wù)版的udp聊天器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了Python實(shí)現(xiàn)多任務(wù)版的udp聊天器,供大家參考,具體內(nèi)容如下

一、案例示例

二、案例說(shuō)明

1、編寫一個(gè)有2個(gè)線程的程序。
2、線程1用來(lái)接收數(shù)據(jù)然后顯示。
3、線程2用來(lái)檢測(cè)鍵盤數(shù)據(jù)然后通過(guò)udp發(fā)送數(shù)據(jù)。

三、參考代碼

import socket
import threading


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


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


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

    # 3. 創(chuàng)建一個(gè)子線程用來(lái)接收數(shù)據(jù)
    t = threading.Thread(target=recv_msg, args=(udp_socket,))
    t.start()
    # 4. 讓主線程用來(lái)檢測(cè)鍵盤數(shù)據(jù)并且發(fā)送
    send_msg(udp_socket)


if __name__ == "__main__":
    main()

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python基于FTP模塊實(shí)現(xiàn)ftp文件上傳操作示例

    Python基于FTP模塊實(shí)現(xiàn)ftp文件上傳操作示例

    這篇文章主要介紹了Python基于FTP模塊實(shí)現(xiàn)ftp文件上傳操作,結(jié)合實(shí)例形式分析了Python引入ftp模塊及相關(guān)設(shè)置、文件傳輸?shù)炔僮骷记?需要的朋友可以參考下
    2018-04-04
  • 對(duì)Python中type打開(kāi)文件的方式介紹

    對(duì)Python中type打開(kāi)文件的方式介紹

    下面小編就為大家介紹一下對(duì)Python中type打開(kāi)文件的方式。具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • Numpy?數(shù)據(jù)處理?ndarray使用詳解

    Numpy?數(shù)據(jù)處理?ndarray使用詳解

    這篇文章主要為大家介紹了Numpy?數(shù)據(jù)處理?ndarray使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • python通過(guò)裝飾器檢查函數(shù)參數(shù)數(shù)據(jù)類型的方法

    python通過(guò)裝飾器檢查函數(shù)參數(shù)數(shù)據(jù)類型的方法

    這篇文章主要介紹了python通過(guò)裝飾器檢查函數(shù)參數(shù)數(shù)據(jù)類型的方法,涉及Python裝飾器的使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-03-03
  • Python7個(gè)爬蟲(chóng)小案例詳解(附源碼)中篇

    Python7個(gè)爬蟲(chóng)小案例詳解(附源碼)中篇

    這篇文章主要介紹了Python7個(gè)爬蟲(chóng)小案例詳解(附源碼)中篇,本文章內(nèi)容詳細(xì),通過(guò)案例可以更好的理解爬蟲(chóng)的相關(guān)知識(shí),七個(gè)例子分為了三部分,本次為中篇,共有二道題,需要的朋友可以參考下
    2023-01-01
  • 詳解Python如何巧妙實(shí)現(xiàn)數(shù)學(xué)階乘n!

    詳解Python如何巧妙實(shí)現(xiàn)數(shù)學(xué)階乘n!

    一個(gè)正整數(shù)的階乘(factorial)是所有小于及等于該數(shù)的正整數(shù)的積,并且0的階乘為1。自然數(shù)n的階乘寫作n!,本文就給大家介紹如何使用python和第三方庫(kù)來(lái)實(shí)現(xiàn)數(shù)學(xué)運(yùn)算中的階乘以及階乘累計(jì)求和
    2023-03-03
  • Python scipy實(shí)現(xiàn)差分進(jìn)化算法

    Python scipy實(shí)現(xiàn)差分進(jìn)化算法

    差分進(jìn)化算法是廣義的遺傳算法的一種,核心思想是變異,這篇文章主要為大家介紹的則是著名的scipy庫(kù)中對(duì)差分進(jìn)化算法的實(shí)現(xiàn),希望對(duì)大家有所幫助
    2023-08-08
  • python-pymysql如何實(shí)現(xiàn)更新mysql表中任意字段數(shù)據(jù)

    python-pymysql如何實(shí)現(xiàn)更新mysql表中任意字段數(shù)據(jù)

    這篇文章主要介紹了python-pymysql如何實(shí)現(xiàn)更新mysql表中任意字段數(shù)據(jù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • python實(shí)現(xiàn)人民幣大寫轉(zhuǎn)換

    python實(shí)現(xiàn)人民幣大寫轉(zhuǎn)換

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)人民幣大寫轉(zhuǎn)換的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Python中的迭代器詳解

    Python中的迭代器詳解

    這篇文章主要介紹迭代器,看完文章你可以了解到什么是可迭代對(duì)象、啥是迭代器、如何自定義迭代器、使用迭代器的優(yōu)勢(shì),文中有詳細(xì)的代碼示例,需要的朋友可以參考下
    2023-08-08

最新評(píng)論