欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python 網(wǎng)絡編程之TCP客戶端/服務端功能示例【基于socket套接字】

 更新時間:2019年10月12日 10:11:24   作者:houyanhua1  
這篇文章主要介紹了Python 網(wǎng)絡編程之TCP客戶端/服務端功能,結合實例形式分析了Python使用socket套接字實現(xiàn)TCP協(xié)議下的客戶端與服務器端數(shù)據(jù)傳輸操作技巧,需要的朋友可以參考下

本文實例講述了Python 網(wǎng)絡編程之TCP客戶端/服務端功能。分享給大家供大家參考,具體如下:

demo.py(TCP客戶端):

import socket
def main():
  # 1. 創(chuàng)建tcp的套接字
  tcp_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  # 2. 鏈接服務器
  # tcp_socket.connect(("192.168.33.11", 7890))
  server_ip = input("請輸入要鏈接的服務器的ip:")
  server_port = int(input("請輸入要鏈接的服務器的port:"))
  server_addr = (server_ip, server_port)
  tcp_socket.connect(server_addr)
  # 3. 發(fā)送數(shù)據(jù)/接收數(shù)據(jù)
  send_data = input("請輸入要發(fā)送的數(shù)據(jù):")
  tcp_socket.send(send_data.encode("utf-8"))
  # 接收數(shù)據(jù)。 會阻塞代碼,直到接收到數(shù)據(jù)
  recv_data = tcp_socket.recv(1024) # 1024表示本次接收的最大字節(jié)數(shù)。
  print(recv_data.decode("utf-8"))
  # 4. 關閉套接字
  tcp_socket.close()
if __name__ == "__main__":
  main()

demo.py(TCP服務端):

import socket
def main():
  # 1. 創(chuàng)建套接字 socket
  tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  # 設置當服務器先close 即服務器端4次揮手之后資源能夠立即釋放,這樣就保證了,下次運行程序時 可以立即綁定7890端口 (如果服務端先close,再啟動服務端就不會報端口被占用的錯誤。)
  tcp_server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
  # 2. 綁定本機ip和端口號 bind
  tcp_server_socket.bind(("", 7890))
  # 3. 監(jiān)聽客戶端的鏈接請求 listen (由主動去鏈接服務器,變成被客戶端鏈接)
  tcp_server_socket.listen(128) # 128影響鏈接客戶端的數(shù)量(并發(fā)量)(和操作系統(tǒng)也有關)
  # 4. 接受客戶端的鏈接 accept。 會阻塞代碼,直到有客戶端鏈接
  new_client_socket, client_addr = tcp_server_socket.accept()
  print(client_addr) # ("192.168.33.109",53766) 客戶端的ip和端口
  # 接收客戶端發(fā)送過來的數(shù)據(jù)。 會阻塞代碼,直到接收到數(shù)據(jù)
  recv_data = new_client_socket.recv(1024) # 1024表示本次接收的最大字節(jié)數(shù)。
  print(recv_data.decode("utf-8")) # 如果recv_data為空,表示客戶端斷開鏈接
  # 寫數(shù)據(jù)給客戶端
  new_client_socket.send("hahahghai-----ok-----".encode("utf-8"))
  # 關閉套接字
  new_client_socket.close() # 與客戶端通信的套接字
  tcp_server_socket.close() # 服務器套接字
if __name__ == "__main__":
  main()

更多關于Python相關內(nèi)容可查看本站專題:《Python Socket編程技巧總結》、《Python數(shù)據(jù)結構與算法教程》、《Python函數(shù)使用技巧總結》、《Python字符串操作技巧匯總》、《Python入門與進階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對大家Python程序設計有所幫助。

相關文章

  • 詳解python中xlrd包的安裝與處理Excel表格

    詳解python中xlrd包的安裝與處理Excel表格

    python處理Excel常用到的模塊是xlrd。使用xlrd可以非常方便的處理Excel文檔,下面這篇文章將給大家詳細介紹python中包xlrd的安裝與利用xlrd處理Excel表格的方法,有需要的朋友們可以參考學習,下面來一起看看吧。
    2016-12-12
  • 跟老齊學Python之編寫類之一創(chuàng)建實例

    跟老齊學Python之編寫類之一創(chuàng)建實例

    上兩篇文章雖然已經(jīng)對類有了一點點模糊概念,但是,閱讀前面一講的內(nèi)容的確感到累呀,都是文字,連代碼都沒有。本講就要簡單多了,嘗試走一個類的流程。
    2014-10-10
  • Python 實現(xiàn)中值濾波、均值濾波的方法

    Python 實現(xiàn)中值濾波、均值濾波的方法

    今天小編就為大家分享一篇Python 實現(xiàn)中值濾波、均值濾波的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • pandas中read_excel()函數(shù)的基本使用

    pandas中read_excel()函數(shù)的基本使用

    在Python的數(shù)據(jù)處理庫pandas中,read_excel()函數(shù)是用于讀取Excel文件內(nèi)容的強大工具,本文就來介紹一下如何使用,具有一定的參考價值,感興趣的可以了解一下
    2024-03-03
  • pytorch載入預訓練模型后,實現(xiàn)訓練指定層

    pytorch載入預訓練模型后,實現(xiàn)訓練指定層

    今天小編就為大家分享一篇pytorch載入預訓練模型后,實現(xiàn)訓練指定層,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • python數(shù)字圖像處理之高級濾波代碼詳解

    python數(shù)字圖像處理之高級濾波代碼詳解

    這篇文章主要介紹了python數(shù)字圖像處理之高級濾波代碼詳解,介紹了許多對圖像處理的濾波方法,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • jupyter notebook 寫代碼自動補全的實現(xiàn)

    jupyter notebook 寫代碼自動補全的實現(xiàn)

    這篇文章主要介紹了jupyter notebook 寫代碼自動補全的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • Python 70行代碼實現(xiàn)簡單算式計算器解析

    Python 70行代碼實現(xiàn)簡單算式計算器解析

    這篇文章主要介紹了Python 70行代碼實現(xiàn)簡單算式計算器解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-08-08
  • python類:class創(chuàng)建、數(shù)據(jù)方法屬性及訪問控制詳解

    python類:class創(chuàng)建、數(shù)據(jù)方法屬性及訪問控制詳解

    下面小編就為大家?guī)硪黄猵ython類:class創(chuàng)建、數(shù)據(jù)方法屬性及訪問控制詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-07-07
  • Pytorch中的數(shù)據(jù)集劃分&正則化方法

    Pytorch中的數(shù)據(jù)集劃分&正則化方法

    這篇文章主要介紹了Pytorch中的數(shù)據(jù)集劃分&正則化方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05

最新評論