Python TCP通信客戶(hù)端服務(wù)端代碼實(shí)例
這篇文章主要介紹了Python TCP通信客戶(hù)端服務(wù)端代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
TCP客戶(hù)端:
import argparse, socket,sys import time # socket.setdefaulttimeout(20) def recvall(sock, length): data = b'' while len(data) < length: more = sock.recv(length - len(data)) if not more: raise EOFError('總共有%dbytes,但只收到了%dbytes' % (length, len(data))) data += more return data if __name__ == '__main__': sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.connect(('192.168.137.1', 10000)) print('客戶(hù)的分配了socket:', sock.getsockname()) i=0 for x in range(4): # try: text = '我是客戶(hù)端你是服務(wù)器嚯嚯嚯!'.encode('utf-8') i=i+len(text) sock.sendall(text) sys.stdout.flush() print("已發(fā)送:",i) # except ConnectionResetError: # pass sock.shutdown(socket.SHUT_WR) num = 0 while True: reply = sock.recv(48) # b'Farewell, client'的長(zhǎng)度 num += len(reply) print('接收:',num) if not reply: print("ok") break # print('服務(wù)器返回:', reply.decode('utf-8')) print("理論上應(yīng)該關(guān)閉sock") sock.close() time.sleep(1)
TCP服務(wù)端:
import argparse, socket,sys def recvall(sock, length): data = b'' while len(data) < length: more = sock.recv(length - len(data)) if not more: raise EOFError('總共有%dbytes,但只收到了%dbytes' % (length, len(data))) data += more return data if __name__ == '__main__': sc = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sc.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) sc.bind(('', 10000)) sc.listen() print('正在偵聽(tīng){}...'.format(sc.getsockname())) num = 0 while True: scc, address = sc.accept() print('連接來(lái)自:', address) print('socket名字:', scc.getsockname()) print('socket peer:', scc.getpeername()) while True: message = scc.recv(42)#recvall(scc, 24) # 嘗試 12,,20,28會(huì)是什么結(jié)果 if not message: break # print('收到16-octet消息:', repr(message)) print('收到16-octet消息:', (message.decode('utf-8'))) scc.sendall(message) sys.stdout.flush() num += len(message) print("已發(fā)送:",num) scc.close() print('應(yīng)答發(fā)送,socket關(guān)閉') sc.close()
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- python的tkinter、socket庫(kù)開(kāi)發(fā)tcp的客戶(hù)端和服務(wù)端詳解
- 使用Python實(shí)現(xiàn)TCP/IP客戶(hù)端和服務(wù)端通信功能
- Python socket如何實(shí)現(xiàn)服務(wù)端和客戶(hù)端數(shù)據(jù)傳輸(TCP)
- Python基于socket實(shí)現(xiàn)TCP客戶(hù)端和服務(wù)端
- Python 網(wǎng)絡(luò)編程之TCP客戶(hù)端/服務(wù)端功能示例【基于socket套接字】
- python網(wǎng)絡(luò)編程tcp客戶(hù)端及服務(wù)端解讀
相關(guān)文章
Python微服務(wù)開(kāi)發(fā)之使用FastAPI構(gòu)建高效API
微服務(wù)架構(gòu)在現(xiàn)代軟件開(kāi)發(fā)中日益普及,它將復(fù)雜的應(yīng)用程序拆分成多個(gè)可獨(dú)立部署的小型服務(wù)。本文將介紹如何使用 Python 的 FastAPI 庫(kù)快速構(gòu)建和部署微服務(wù),感興趣的可以了解一下2023-05-05使用Python實(shí)現(xiàn)VPN搭建的流程步驟
VPN(虛擬私人網(wǎng)絡(luò))是一種有效的解決方案,可以幫助我們?cè)诰W(wǎng)絡(luò)上匿名瀏覽,保護(hù)數(shù)據(jù)傳輸?shù)陌踩?雖然市面上有許多商業(yè)VPN服務(wù),但你也可以通過(guò)Python自己搭建一個(gè)簡(jiǎn)單的VPN,本文將介紹如何用Python建立自己的VPN,需要的朋友可以參考下2024-06-06基于Python?OpenCV和?dlib實(shí)現(xiàn)眨眼檢測(cè)
這篇文章主要介紹了基于Python?OPenCV及dlib實(shí)現(xiàn)檢測(cè)視頻流中的眨眼次數(shù)。文中的代碼對(duì)我們的學(xué)習(xí)和工作有一定價(jià)值,感興趣的同學(xué)可以參考一下2021-12-12Pytorch實(shí)現(xiàn)常用乘法算子TensorRT的示例代碼
pytorch 用于訓(xùn)練,TensorRT用于推理是很多AI應(yīng)用開(kāi)發(fā)的標(biāo)配。大家往往更加熟悉 pytorch 的算子,而不太熟悉TensorRT的算子。本文介紹了Pytorch中常用乘法的TensorRT實(shí)現(xiàn),感興趣的可以了解一下2022-06-06Python中的命名元組簡(jiǎn)單而強(qiáng)大的數(shù)據(jù)結(jié)構(gòu)示例詳解
namedtuple是Python中一個(gè)非常有用的數(shù)據(jù)結(jié)構(gòu),它提供了一種簡(jiǎn)單的方式創(chuàng)建具有固定字段的輕量級(jí)對(duì)象,通過(guò)使用namedtuple,可以提高代碼的可讀性和可維護(hù)性,避免了使用類(lèi)定義對(duì)象的復(fù)雜性,這篇文章主要介紹了Python中的命名元組簡(jiǎn)單而強(qiáng)大的數(shù)據(jù)結(jié)構(gòu),需要的朋友可以參考下2024-05-05Python基于win32ui模塊創(chuàng)建彈出式菜單示例
這篇文章主要介紹了Python基于win32ui模塊創(chuàng)建彈出式菜單,結(jié)合實(shí)例形式分析了Python使用win32ui模塊創(chuàng)建彈出式菜單的具體步驟與相關(guān)操作技巧,并附帶說(shuō)明了win32ui模塊的安裝命令,需要的朋友可以參考下2018-05-05python tkinter GUI繪制,以及點(diǎn)擊更新顯示圖片代碼
這篇文章主要介紹了python tkinter GUI繪制,以及點(diǎn)擊更新顯示圖片代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03使用matplotlib創(chuàng)建Gif動(dòng)圖的實(shí)現(xiàn)
本文主要介紹了使用matplotlib創(chuàng)建Gif動(dòng)圖的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-04-04零基礎(chǔ)寫(xiě)python爬蟲(chóng)之爬蟲(chóng)編寫(xiě)全記錄
前面九篇文章從基礎(chǔ)到編寫(xiě)都做了詳細(xì)的介紹了,第十篇么講究個(gè)十全十美,那么我們就來(lái)詳細(xì)記錄一下一個(gè)爬蟲(chóng)程序如何一步步編寫(xiě)出來(lái)的,各位看官可要看仔細(xì)了2014-11-11