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

 更新时间:2015年04月30日 14:45:02   作者:露露  
这篇文章主要介绍了python实现TCP服务器端与客户端的方法,以实例形式详解分析了Python实现服务器端与客户端的技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了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中字典的基础介绍及常用操作总结

    字典也是python的数据类型中的一种,它由许多键值对组成,它是一种可变容器模型,一般情况下键是唯一的,字典支持嵌套,下面这篇文章主要给大家介绍了关于Python中字典的基础介绍及常用操作,需要的朋友可以参考下
    2021-09-09
  • Python编程利用科赫曲线实现三维飘雪效果示例过程

    Python编程利用科赫曲线实现三维飘雪效果示例过程

    这篇文章主要介绍了Python编程实现三维飘雪效果示例过程,通过本示例你可以自己做出一个浪漫的雪花飘落效果,有需要的朋友可以借鉴参考下
    2021-10-10
  • 安装多个版本的TensorFlow的方法步骤

    安装多个版本的TensorFlow的方法步骤

    这篇文章主要介绍了安装多个版本的TensorFlow的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • python 获取毫秒级时间问题的解决

    python 获取毫秒级时间问题的解决

    这篇文章主要介绍了python 获取毫秒级时间问题的解决,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • Python3.9.1中使用split()的处理方法(推荐)

    Python3.9.1中使用split()的处理方法(推荐)

    这篇文章主要介绍了Python3.9.1中使用split()的处理方法(推荐),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • Python Pygame实战之打砖块小游戏

    Python Pygame实战之打砖块小游戏

    打砖块最早是由雅达利公司开发的一款独立游戏,也是无数人的童年记忆。本文将利用Python中的Pygame模块制作经典的打砖块游戏,需要的可以参考一下
    2022-02-02
  • python3简单实现微信爬虫

    python3简单实现微信爬虫

    我们可以通过python 来实现这样一个简单的爬虫功能,把我们想要的代码爬取到本地。下面就看看如何使用python来实现这样一个功能。
    2015-04-04
  • python深度学习tensorflow实例数据下载与读取

    python深度学习tensorflow实例数据下载与读取

    这篇文章主要为大家介绍了python深度学习tensorflow实例数据下载与读取示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • Python 自动安装 Rising 杀毒软件

    Python 自动安装 Rising 杀毒软件

    平日里经常需要重新安装杀毒软件,我使用的是 Rising 该软件可以将升级后的新版本,压缩成一个安装包,当升级失败造成硬盘中的 Rising
    2009-04-04
  • Python编程使用tkinter模块实现计算器软件完整代码示例

    Python编程使用tkinter模块实现计算器软件完整代码示例

    这篇文章主要介绍了Python编程实现一个计算器软件完整代码示例,简单介绍了Tkinter的相关内容,然后分享了通过tkinter模块开发一个计算器的完整Python代码,具有一定借鉴价值,需要的朋友可以参考下。
    2017-11-11

最新评论