python实现TCP服务器端与客户端的方法详解
本文实例讲述了python实现TCP服务器端与客户端的方法。分享给大家供大家参考。具体如下:
TCP服务器程序(tsTserv.py):
fromsocketimport* fromtimeimportctime HOST='' PORT=21567 BUFSIZ=1024 ADDR=(HOST,PORT) tcpSerSock=socket(AF_INET,SOCK_STREAM) tcpSerSock.bind(ADDR) tcpSerSock.listen(5) whileTrue: print'waitingforconnection...' tcpCliSock,addr=tcpSerSock.accept() print'...connectedfrom:',addr whileTrue: data=tcpCliSock.recv(BUFSIZ) ifnotdata: break tcpCliSock.send('[%s]%s'%(ctime(),data)) tcpCliSock.close() tcpSerSock.close()
TCP客户端程序(tsTclnt.py):
fromsocketimport* HOST='localhost' PORT=21567 BUFSIZ=1024 ADDR=(HOST,PORT) tcpCliSock=socket(AF_INET,SOCK_STREAM) tcpCliSock.connect(ADDR) whileTrue: data=raw_input('>') ifnotdata: break tcpCliSock.send(data) data1=tcpCliSock.recv(BUFSIZ) ifnotdata1: break printdata1 tcpCliSock.close()
运行说明:先运行服务器程序,作用类似于打开服务器保持等待客户请求,再运行客户端程序。
运行界面如下:
服务器端:
D:\code\ex>pythontsTserv.py waitingforconnection... ...connectedfrom:('127.0.0.1',2883) waitingforconnection... ...connectedfrom:('127.0.0.1',2885) waitingforconnection... ...connectedfrom:('127.0.0.1',2889) waitingforconnection... ...connectedfrom:('127.0.0.1',2891) waitingforconnection... ...connectedfrom:('127.0.0.1',2892) waitingforconnection... ...connectedfrom:('127.0.0.1',2893) waitingforconnection...
客户端:
D:\code\ex>pythontsTclnt.py >1 [ThuFeb0215:52:212012]1 >2 [ThuFeb0215:52:222012]2 >3 [ThuFeb0215:52:222012]3 >5 [ThuFeb0215:52:232012]5 >6 [ThuFeb0215:52:242012]6 > D:\code\ex>
希望本文所述对大家的Python程序设计有所帮助。