python 網絡編程(udp數據報)

       什麼是UDP:UDP是一個簡單的面向數據報的運輸層協議:進程的每個輸出操作都正好產生一個UDP數據報,並組裝成一份待發送的IP數據報。這與面向流字符的協議不同,如TCP,應用程序產生的全體數據與真正發送的單個IP數據報可能沒有什麼聯繫。接收端是服務器(server),發送端是客戶機(client)。

python中網絡編程需要先import  socket包:

import sys

import socket

       爲發送目的端開一個變量,保存其IP地址及端口,同時開一個變量保存自己本機IP地址,書寫形式如下:('IP地址',端口號)

address=('192.168.1.39',8085)  #set the self_address

addressto=('192.168.1.45',8085) #set the sendto_address


      創建一個socket類的變量,然後將本機IP地址綁定到這個socket類中:

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

s.bind(address)

       只要生成了socket類的變量,就可以收到來自別的客戶機發來的消息,如果需要往其他IP地址發送消息,本機只需要作爲客戶機向外發送就可以了,只需要一個s變量。

data, addr = s.recvfrom(1024) 從發送方接收數據,接收到的數據data爲字符串類型,保存在data中,從對方發送過來的地址保存在addr中。1024表示一次最多接收1024個字節。

s.sendto(message,addressto) 向目的地爲addressto的地址發送message。這樣對方就能收到了,message的數據類型是字符串。   

s.close()最後進行關閉。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章