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程序设计有所帮助。