溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

解決python中udp不能接收數(shù)據(jù)的方法

發(fā)布時(shí)間:2020-07-02 10:35:48 來(lái)源:億速云 閱讀:748 作者:清晨 欄目:編程語(yǔ)言

這篇文章主要介紹解決python中udp不能接收數(shù)據(jù)的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

python3通過(guò)udp方式發(fā)送的消息可以在網(wǎng)絡(luò)調(diào)試助手接收,但是在網(wǎng)絡(luò)調(diào)試助手上發(fā)送的消息在python3上卻接收不到。

首先python3接收寫(xiě)的代碼如下:

import socket

def receive_message():
    udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)  #創(chuàng)建一個(gè)套接字
    udp_socket.bind(('', 63630))  #綁定本地信息,自己電腦的ip和程序的端口。ip一般不用寫(xiě),表示本機(jī)的任意一個(gè)ip,端口大于常用的1023就可以
    while True:
        udp_data = udp_socket.recvfrom(1024) #接收數(shù)據(jù),1024表示本次接收的最大字節(jié)數(shù)
        if udp_data[0].decode(encoding='gbk') != 'end':
            print('{}:{}'.format(str(udp_data[1]), udp_data[0].decode(encoding='gbk')))
        else:
            break
    udp_socket.close()  #關(guān)閉套接字

if __name__ == '__main__':
    receive_message()

解決方法:

在Windows防火墻設(shè)置中勾選下圖中紅色箭頭指向的選項(xiàng)

解決python中udp不能接收數(shù)據(jù)的方法

再次運(yùn)行程序,win10彈出對(duì)話框如下:

解決python中udp不能接收數(shù)據(jù)的方法


以上是解決python中udp不能接收數(shù)據(jù)的方法的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI