python網絡編程知多少?【python入門每日一個知識點66期】
一般初學者學習Python網絡編程,都會覺得難不好懂,一般來講要做Python網絡編程是需要懂Python基礎的,以及也要學習web的知識和http協議,在這過程中你可以試著寫些小爬蟲,能讓自己在學習中有正反饋,今天我們來看一看Python網絡編程。
【Python入門每日一個知識點66期主題】Python網絡編程知多少?
在網絡編程中德一個基本組件就是套接字。套接字主要是兩個程序之間的信息通道。
套接字包括兩個:服務器套接字和客戶機套接字。創建一個服務器套接字后,讓它等待連接。這樣它就在某個網絡地址處監聽。
一個套接字就是一個socket模塊中socket類的實例。它的實例化需要3個參數:第一個參數是地址族(默認是socket.AF_INET);第2個參數是流(socket.SOCK_STREAM,默認值)或數據報(socket.SOCK_DGRAM)套接字。第三個參數是使用的協議(默認是0)。
socket起源于Unix,在Unix一切皆文件的哲學的思想下,socket是一種"打開—讀/寫—關閉"模式的實現,服務器和客戶端各自維護一個"文件",在建立連接打開后,可以向自己文件寫入內容供對方讀取或者讀取對方內容,通訊結束時關閉文件。socket的英文原義是“插槽”或“插座”,就像我們家里座機一樣,如果沒有網線的那個插口,電話是無法通信的。Socket是實現TCP,UDP協議的接口,便于使用TCP,UDP。
資深的Python開發從業者建議:
基本的比如網絡層次結構,每一層的工作原理,數據傳輸方式,網絡協議,要有個基本了解。其次,TCP/IP這個很重要,推薦先看看《計算機網絡》。
Python 提供了兩個級別訪問的網絡服務:
- 低級別的網絡服務支持基本的 Socket,它提供了標準的 BSD Sockets API,可以訪問底層操作系統Socket接口的全部方法。
- 高級別的網絡服務模塊 SocketServer, 它提供了服務器中心類,可以簡化網絡服務器的開發。
【更多擴展閱讀】Web APP編程模型和IO策略
《Python入門每日一個知識點》欄目是馬哥教育Python年薪20萬+的學員社群特別發起,分享Python工具、Python語法、Python項目等知識點,幫助大家快速的了解Python學習,快速步入Python高薪的快車道。
【更多擴展閱讀】