python实现TCP服务器端与客户端的方法详解


Posted in Python onApril 30, 2015

本文实例讲述了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程序设计有所帮助。

Python 相关文章推荐
python复制与引用用法分析
Apr 08 Python
在Python的Flask框架下使用sqlalchemy库的简单教程
Apr 09 Python
Python中SOAP项目的介绍及其在web开发中的应用
Apr 14 Python
Python生成随机验证码的两种方法
Dec 22 Python
python如何修改装饰器中参数
Mar 20 Python
如何使用 Pylint 来规范 Python 代码风格(来自IBM)
Apr 06 Python
Python实现中一次读取多个值的方法
Apr 22 Python
在windows下Python打印彩色字体的方法
May 15 Python
Python实现数据可视化看如何监控你的爬虫状态【推荐】
Aug 10 Python
Python计算机视觉里的IOU计算实例
Jan 17 Python
Anaconda3+tensorflow2.0.0+PyCharm安装与环境搭建(图文)
Feb 18 Python
浅谈keras中的Merge层(实现层的相加、相减、相乘实例)
May 23 Python
python排序方法实例分析
Apr 30 #Python
python中lambda与def用法对比实例分析
Apr 30 #Python
python中self原理实例分析
Apr 30 #Python
部署Python的框架下的web app的详细教程
Apr 30 #Python
python实现清屏的方法
Apr 30 #Python
Python中类的定义、继承及使用对象实例详解
Apr 30 #Python
python中global用法实例分析
Apr 30 #Python
You might like
详解:――如何将图片储存在数据库里
2006/12/05 PHP
PHP开发负载均衡指南
2010/07/17 PHP
php正则过滤html标签、空格、换行符的代码(附说明)
2010/10/25 PHP
php防止恶意刷新与刷票的方法
2014/11/21 PHP
不懂JavaScript应该怎样学
2008/04/16 Javascript
JavaScript delete操作符应用实例
2009/01/13 Javascript
利用JS重写Cognos右键菜单的实现代码
2010/04/11 Javascript
setInterval,setTimeout与jquery混用的问题
2013/04/08 Javascript
javascript中RegExp保留小数点后几位数的方法分享
2013/08/13 Javascript
jquery控制显示服务器生成的图片流
2015/08/04 Javascript
JavaScript判断表单为空及获取焦点的方法
2016/02/12 Javascript
理解javascript中Map代替循环
2016/02/26 Javascript
JavaScript页面实时显示当前时间实例代码
2016/10/23 Javascript
Vue 页面跳转不用router-link的实现代码
2018/04/12 Javascript
详解Vue-cli中的静态资源管理(src/assets和static/的区别)
2018/06/19 Javascript
vue-router中scrollBehavior的巧妙用法
2018/07/09 Javascript
Node.js中文件系统fs模块的使用及常用接口
2020/03/06 Javascript
使用 Jest 和 Supertest 进行接口端点测试实例详解
2020/04/25 Javascript
python实现计算资源图标crc值的方法
2014/10/05 Python
python轻松实现代码编码格式转换
2015/03/26 Python
python中WSGI是什么,Python应用WSGI详解
2017/11/24 Python
Flask框架Flask-Principal基本用法实例分析
2018/07/23 Python
celery4+django2定时任务的实现代码
2018/12/23 Python
Python远程视频监控程序的实例代码
2019/05/05 Python
Python实现最常见加密方式详解
2019/07/13 Python
Python any()函数的使用方法
2019/10/28 Python
几款好用的python工具库(小结)
2020/10/20 Python
Jupyter Notebook安装及使用方法解析
2020/11/12 Python
小学生竞选班长演讲稿
2014/04/24 职场文书
捐助贫困学生倡议书
2014/05/16 职场文书
2014年学习全国道德模范事迹思想汇报
2014/09/15 职场文书
2016年全国爱牙日宣传活动总结
2016/04/05 职场文书
班组长如何制订适合本班组的工作计划?
2019/07/10 职场文书
祝福语集锦:给妹妹结婚的祝福语
2019/12/18 职场文书
详解在OpenCV中如何使用图像像素
2022/03/03 Python
Python如何利用pandas读取csv数据并绘图
2022/07/07 Python