TCP服务端:
#!/usr/bin/python
#可以实现client发送字符串给server,server返回该字符串,同时在前面加上时间
from socket import * #导入socket模块中所有属性
from time import ctime
HOST='' #sevrer端这里是空,表示所有的主机都可以
PORT=21567 #这是一个没有被使用的端口
BUFSIZ = 1024 #这是缓存的大小,1k
ADDR = (HOST,PORT) #主机名和端口,以上这些定义了主机常量
tcpSerSock = socket(AF_INET,SOCK_STREAM) #创建socket对象
tcpSerSock.bind(ADDR) #将这个对象绑定到地址
tcpSerSock.listen(5) #最多可以有几个连接,server端一直处于监听的状态
while True:
print 'waiting for connection....'
tcpCliSock,addr = tcpSerSock.accept() #server端接受的信息使用accept函数接受
print '...connected from:',addr
while True:
data = tcpCliSock.recv(BUFSIZ)
if not data:
break
tcpCliSock.send('[%s] %s' % (ctime(),data))
tcpCliSock.close()
client端:
#!/usr/bin/python
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)
data = tcpCliSock.recv(BUFSIZ)
if not data:
break
print data
tcpCliSock.close()