您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了Python如何實(shí)現(xiàn)UDP程序通信,內(nèi)容簡(jiǎn)而易懂,希望大家可以學(xué)習(xí)一下,學(xué)習(xí)完之后肯定會(huì)有收獲的,下面讓小編帶大家一起來(lái)看看吧。
運(yùn)行流程:編輯好代碼后,通過(guò)cmd打開(kāi)文件執(zhí)行。例:C:\Users\小李酷少>C:\Users\小李酷少\Desktop\發(fā)送端.py hello
易見(jiàn)問(wèn)題:在運(yùn)行程序的時(shí)候容易出現(xiàn)“請(qǐng)求的地址無(wú)效”的情況:
這是因?yàn)樵诰庉嫶a時(shí)候輸入的ip地址不正確。
解決方法:
打開(kāi)cmd,輸入ipconfig,查看本機(jī)ip地址。如下圖
之后在代碼行修改為正確的IP地址就好啦。
1、代碼
(1)接收端代碼:
import socket #使用IPV4協(xié)議,使用UDP協(xié)議傳輸數(shù)據(jù) s=socket.socket(socket.AF_INET, socket.SOCK_DGRAM) #綁定端口和端口號(hào),空字符串表示本機(jī)任何可用IP地址 s.bind(('192.168.0.106', 5000)) while True: data, addr=s.recvfrom(1024) #顯示接收到的內(nèi)容 print('received message:{0} from PORT {1} on {2}'.format(data.decode(), addr[1], addr[0])) if data.decode().lower() == 'bye': break s.close( )
(2)發(fā)送端代碼:
import socket import sys s=socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.sendto(sys.argv[1].encode() , ("192.168.0.106" ,5000))#假設(shè)192.168.0.103是接收端機(jī)器的IP地址 s.close( )
2、運(yùn)行結(jié)果:
(1)發(fā)送端:
(2)接收端:
以上就是關(guān)于Python如何實(shí)現(xiàn)UDP程序通信的內(nèi)容,如果你們有學(xué)習(xí)到知識(shí)或者技能,可以把它分享出去讓更多的人看到。
免責(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)容。