您好,登錄后才能下訂單哦!
這篇文章主要介紹了python程序間怎么進行通信的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇python程序間怎么進行通信文章都會有所收獲,下面我們一起來看看吧。
socket,中文翻譯為套接字。它是一種對網(wǎng)絡中不同主機上的應用進程(或者相同主機的不同應用進程)之間進行雙向通信的端點的抽象。實際上就是兩個網(wǎng)絡各種通信連接中的端點。它的作用就是完成應用間的數(shù)據(jù)傳輸。
套接字技術簡單的來講就是通過socket,將兩個應用進行連接,連接之后就能進行數(shù)據(jù)傳輸了。socket只是實現(xiàn)連接的方法。 小編認為套接字這個翻譯并不能直接反映出這門技術的特點(過于生澀),socket可以被翻譯為插座,而實際上套接字技術更像是軟件上的“插座”和“插頭”。漢語中的套接,是一種水管對接的技術,使用一個套接管將兩端的水管連接起來,這種技術就叫套接,所以是不是能理解什么是套接字了呢?
不同語言實現(xiàn)套接字的方式不同,python有專門實現(xiàn)套接字的包。只需要import
相應的包,就可以進行套接字編程。
創(chuàng)建socket連接后可以通過recv()
和send()
的方法來獲取和發(fā)送socket之間傳輸?shù)臄?shù)據(jù)。
接下來就用一個實例代碼來介紹一下怎么使用socket吧!
server.py
# 導入 socket模塊
import socket
# 創(chuàng)建 socket 對象
serversocket = socket.socket(
socket.AF_INET, socket.SOCK_STREAM)
# 獲取本地主機名
host = socket.gethostname()
port = 9999
# 綁定端口
serversocket.bind((host, port))
# 設置最大連接數(shù),超過后排隊
serversocket.listen(5)
while True:
# 建立客戶端連接
clientsocket, addr = serversocket.accept()
print("連接地址: %s" % str(addr))
msg = '歡迎訪問W3Cschool教程!' + "\r\n"
clientsocket.send(msg.encode('utf-8'))
clientsocket.close()
client.py
# 導入 socket 模塊
import socket
# 創(chuàng)建 socket 對象
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 獲取本地主機名
host = socket.gethostname()
# 設置端口號
port = 9999
# 連接服務,指定主機和端口
s.connect((host, port))
# 接收小于 1024 字節(jié)的數(shù)據(jù)
msg = s.recv(1024)
s.close()
print(msg.decode('utf-8'))
關于“python程序間怎么進行通信”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“python程序間怎么進行通信”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。