python如何创建TCP服务端和客户端


Posted in Python onAugust 26, 2018

本文实例为大家分享了python创建tcp服务端和客户端的具体代码,供大家参考,具体内容如下

1.服务端server

from socket import *
from time import ctime

HOST = ''
PORT = 9999
BUFSIZ = 1024
ADDR = (HOST, PORT)

tcpSerSock = socket(AF_INET, SOCK_STREAM)  #创建套接字
tcpSerSock.bind(ADDR)  #绑定IP和端口
tcpSerSock.listen(5)  #监听端口,最多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
    content = '[%s] %s' % (bytes(ctime(), "utf-8"), data)
    print(data)
    print(type(content))
    tcpCliSock.send(content.encode("utf-8"))

  tcpCliSock.close()

tcpSerSock.close()

2.客户端client

from socket import *

HOST = '127.0.0.1' # or 'localhost'
PORT = 9999
BUFSIZ = 1024
ADDR = (HOST, PORT)

tcpCliSock = socket(AF_INET, SOCK_STREAM)
tcpCliSock.connect(ADDR)

while True:
  data = input('> ')
  if not data:
    break

  tcpCliSock.send(data.encode("utf-8"))
  data = tcpCliSock.recv(BUFSIZ)
  if not data:
    break
  print(data.decode("utf-8"))

tcpCliSock.close()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
跨平台python异步回调机制实现和使用方法
Nov 26 Python
python中的reduce内建函数使用方法指南
Aug 31 Python
Python常用随机数与随机字符串方法实例
Apr 09 Python
Python语言描述KNN算法与Kd树
Dec 13 Python
django利用request id便于定位及给日志加上request_id
Aug 26 Python
在Python中输入一个以空格为间隔的数组方法
Nov 13 Python
python的re模块使用方法详解
Jul 26 Python
django数据模型(Model)的字段类型解析
Dec 25 Python
Python super()函数使用及多重继承
May 06 Python
python时间序列数据转为timestamp格式的方法
Aug 03 Python
Python 按比例获取样本数据或执行任务的实现代码
Dec 03 Python
如何使用Python提取Chrome浏览器保存的密码
Jun 09 Python
Django压缩静态文件的实现方法详析
Aug 26 #Python
Python实现将Excel转换成xml的方法示例
Aug 25 #Python
Python实现的简单计算器功能详解
Aug 25 #Python
Python基于OpenCV库Adaboost实现人脸识别功能详解
Aug 25 #Python
Python使用matplotlib绘制三维图形示例
Aug 25 #Python
Python实现的括号匹配判断功能示例
Aug 25 #Python
Django中使用Celery的教程详解
Aug 24 #Python
You might like
phpmyadmin操作流程
2006/10/09 PHP
PHP四种基本排序算法示例
2015/04/09 PHP
Yii2框架dropDownList下拉菜单用法实例分析
2016/07/18 PHP
PHP+RabbitMQ实现消息队列的完整代码
2019/03/20 PHP
从盛大通行证上摘下来的身份证验证js代码
2011/01/11 Javascript
使用JS读秒使用示例
2013/09/21 Javascript
JS 使用for循环遍历子节点查找元素
2014/09/06 Javascript
javascript在IE下trim函数无法使用的解决方法
2014/09/12 Javascript
浅谈jQuery中对象遍历.eq().first().last().slice()方法
2014/11/26 Javascript
基于jQuery日历插件制作日历
2016/03/11 Javascript
JSON中key动态设置及JSON.parse和JSON.stringify()的区别
2016/12/29 Javascript
JavaScript cookie详解及简单实例应用
2016/12/31 Javascript
JQuery和HTML5 Canvas实现弹幕效果
2017/01/04 Javascript
JS正则获取HTML元素的方法
2017/03/31 Javascript
老生常谈js中的MVC
2017/07/25 Javascript
JavaScript框架Angular和React深度对比
2017/11/20 Javascript
Element UI框架中巧用树选择器的实现
2018/12/12 Javascript
微信小程序rich-text富文本用法实例分析
2019/05/20 Javascript
js实现简单掷骰子小游戏
2019/10/24 Javascript
nestjs返回给前端数据格式的封装实现
2021/02/22 Javascript
Python基础入门之seed()方法的使用
2015/05/15 Python
Python算法之求n个节点不同二叉树个数
2017/10/27 Python
Anaconda2 5.2.0安装使用图文教程
2018/09/19 Python
Python设计模式之组合模式原理与用法实例分析
2019/01/11 Python
ubuntu 18.04搭建python环境(pycharm+anaconda)
2019/06/14 Python
Python Sphinx使用实例及问题解决
2020/01/17 Python
python实现加密的方式总结
2020/01/19 Python
Python中and和or如何使用
2020/05/28 Python
Ryderwear澳洲官网:澳大利亚高端健身训练装备品牌
2018/09/18 全球购物
医学生就业推荐表自我鉴定
2014/03/26 职场文书
大学毕业寄语大全
2014/04/10 职场文书
晋江市人民政府党组群众路线教育实践活动整改方案
2014/10/25 职场文书
Pytorch 统计模型参数量的操作 param.numel()
2021/05/13 Python
html+css实现滚动到元素位置显示加载动画效果
2021/08/02 HTML / CSS
Python3使用Qt5来实现简易的五子棋小游戏
2022/05/02 Python
如何让你的Nginx支持分布式追踪详解
2022/07/07 Servers