python实现TCP服务器端与客户端的方法详解
2015-05-04来源:易贤网

本文实例讲述了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:codeex>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:codeex>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:codeex>

更多信息请查看IT技术专栏

2026公务员·事业单位培训课程试听报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
推荐信息