python實(shí)現(xiàn)TCP服務(wù)器端與客戶端的方法詳解
本文實(shí)例講述了python實(shí)現(xiàn)TCP服務(wù)器端與客戶端的方法。分享給大家供大家參考。具體如下:
TCP服務(wù)器程序(tsTserv.py):
from socket import *
from time import ctime
HOST = ''
PORT = 21567
BUFSIZ = 1024
ADDR = (HOST, PORT)
tcpSerSock = socket(AF_INET, SOCK_STREAM)
tcpSerSock.bind(ADDR)
tcpSerSock.listen(5)
while True:
print 'waiting for connection...'
tcpCliSock, addr = tcpSerSock.accept()
print '...connected from:', addr
while True:
data = tcpCliSock.recv(BUFSIZ)
if not data:
break
tcpCliSock.send('[%s] %s' %(ctime(), data))
tcpCliSock.close()
tcpSerSock.close()
TCP客戶端程序(tsTclnt.py):
from socket import *
HOST = 'localhost'
PORT = 21567
BUFSIZ = 1024
ADDR = (HOST, PORT)
tcpCliSock = socket(AF_INET, SOCK_STREAM)
tcpCliSock.connect(ADDR)
while True:
data = raw_input('> ')
if not data:
break
tcpCliSock.send(data)
data1 = tcpCliSock.recv(BUFSIZ)
if not data1:
break
print data1
tcpCliSock.close()
運(yùn)行說明:先運(yùn)行服務(wù)器程序,作用類似于打開服務(wù)器保持等待客戶請求,再運(yùn)行客戶端程序。
運(yùn)行界面如下:
服務(wù)器端:
D:\code\ex>python tsTserv.py
waiting for connection...
...connected from: ('127.0.0.1', 2883)
waiting for connection...
...connected from: ('127.0.0.1', 2885)
waiting for connection...
...connected from: ('127.0.0.1', 2889)
waiting for connection...
...connected from: ('127.0.0.1', 2891)
waiting for connection...
...connected from: ('127.0.0.1', 2892)
waiting for connection...
...connected from: ('127.0.0.1', 2893)
waiting for connection...
客戶端:
D:\code\ex>python tsTclnt.py > 1 [Thu Feb 02 15:52:21 2012] 1 > 2 [Thu Feb 02 15:52:22 2012] 2 > 3 [Thu Feb 02 15:52:22 2012] 3 > 5 [Thu Feb 02 15:52:23 2012] 5 > 6 [Thu Feb 02 15:52:24 2012] 6 > D:\code\ex>
希望本文所述對大家的Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Python中字典的基礎(chǔ)介紹及常用操作總結(jié)
字典也是python的數(shù)據(jù)類型中的一種,它由許多鍵值對組成,它是一種可變?nèi)萜髂P?一般情況下鍵是唯一的,字典支持嵌套,下面這篇文章主要給大家介紹了關(guān)于Python中字典的基礎(chǔ)介紹及常用操作,需要的朋友可以參考下2021-09-09
Python編程利用科赫曲線實(shí)現(xiàn)三維飄雪效果示例過程
這篇文章主要介紹了Python編程實(shí)現(xiàn)三維飄雪效果示例過程,通過本示例你可以自己做出一個(gè)浪漫的雪花飄落效果,有需要的朋友可以借鑒參考下2021-10-10
Python3.9.1中使用split()的處理方法(推薦)
這篇文章主要介紹了Python3.9.1中使用split()的處理方法(推薦),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02
Python?Pygame實(shí)戰(zhàn)之打磚塊小游戲
打磚塊最早是由雅達(dá)利公司開發(fā)的一款獨(dú)立游戲,也是無數(shù)人的童年記憶。本文將利用Python中的Pygame模塊制作經(jīng)典的打磚塊游戲,需要的可以參考一下2022-02-02
python深度學(xué)習(xí)tensorflow實(shí)例數(shù)據(jù)下載與讀取
這篇文章主要為大家介紹了python深度學(xué)習(xí)tensorflow實(shí)例數(shù)據(jù)下載與讀取示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06
Python編程使用tkinter模塊實(shí)現(xiàn)計(jì)算器軟件完整代碼示例
這篇文章主要介紹了Python編程實(shí)現(xiàn)一個(gè)計(jì)算器軟件完整代碼示例,簡單介紹了Tkinter的相關(guān)內(nèi)容,然后分享了通過tkinter模塊開發(fā)一個(gè)計(jì)算器的完整Python代碼,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-11-11

