您好,登錄后才能下訂單哦!
這篇文章主要講解了“python socket是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“python socket是什么”吧!
socket起源于Unix,而Unix/Linux基本哲學之一就是“一切皆文件”,對于文件用【打開】【讀寫】【關閉】模式來操作。socket就是該模式的一個實現,socket即是一種特殊的文件,一些socket函數就是對其進行的操作(讀/寫IO、打開、關閉)基本上,Socket 是任何一種計算機網絡通訊中最基礎的內容。
首要解決的問題是如何唯一標識一個進程,否則通信無從談起!在1臺電腦上可以通過進程號(PID)來唯一標識一個進程,但是在網絡中這是行不通的。 在網絡應用程序設計時,由于TCP/IP的核心內容被封裝在操作系統中,如果應用程序要使用TCP/IP,可以通過系統提供的TCP/IP的編程接口來實現。在Windows環境下,網絡應用程序編程接口稱作Windows Socket。為了支持用戶開發面向應用的通信程序,大部分系統都提供了一組基于TCP或者UDP的應用程序編程接口(API),該接口通常以一組函數的形式出現,也稱為套接字(Socket)。 其實TCP/IP協議族已經幫我們解決了這個問題,網絡層的“ip地址”可以唯一標識網絡中的主機,而傳輸層的“協議+端口”可以唯一標識主機中的應用進程(進程)。 這樣利用ip地址,協議,端口就可以標識網絡的進程了,網絡中的進程通信就可以利用這個標志與其它進程進行交互
注意:
?
所謂 進程
指的是:運行的程序以及運行時用到的資源這個整體稱之為進程(在講解多任務編程時進行詳細講解)所謂 進程間通信
指的是:運行的程序之間的數據共享后面課程中會詳細說到,像網絡層等知識,不要著急
socket(簡稱 套接字
) 是進程間通信的一種方式,它與其他進程間通信的一個主要不同是:
它能實現不同主機間的進程間通信,我們網絡上各種各樣的服務大多都是基于 Socket 來完成通信的
例如我們每天瀏覽網頁、QQ 聊天、收發 email 等等
在 Python 中 使用socket 模塊的函數 socket 就可以完成:
import socket socket.socket(AddressFamily, Type)
說明:
函數 socket.socket 創建一個 socket,該函數帶有兩個參數:
創建一個tcp socket(tcp套接字)
import socket# 創建tcp的套接字s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# ...這里是使用套接字的功能(省略)...# 不用的時候,關閉套接字s.close()
創建一個udp socket(udp套接字)
import socket# 創建udp的套接字s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)# ...這里是使用套接字的功能(省略)...# 不用的時候,關閉套接字s.close()
說明
套接字使用流程 與 文件的使用流程很類似
感謝各位的閱讀,以上就是“python socket是什么”的內容了,經過本文的學習后,相信大家對python socket是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。