本文实例讲述了python实现TCP服务器端与客户端的方法。分享给大家供大家参考。具体如下:
TCP服务器程序(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()
运行说明:先运行服务器程序,作用类似于打开服务器保持等待客户请求,再运行客户端程序。
运行界面如下:
服务器端:
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程序设计有所帮助。