服务器端:

1.创建一个面向网络的TCP套接字对象socket,

2.绑定地址和端口

3.监听

4.当有客户端连接时候,接受连接并给此连接分配一个新的套接字

5.当客户端发送空信息时候,关闭新分配的套接字

 import socket
from time import ctime HOST = ''
PORT = 50029
BUFSIZE = 1024
ADDR = (HOST,PORT)
tcpserver = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
tcpserver.bind(ADDR)
tcpserver.listen(5) while True:
print('waiting for connecting...')
tcpconn,addr = tcpserver.accept()
print('...connected from:',addr) while True:
data = tcpconn.recv(BUFSIZE).decode()
if not data:
break
tcpconn.send(('[{0}]{1}'.format(ctime(),data)).encode()) tcpconn.close()

客户端:

1.创建新的套接字

2.连接指定的地址和端口号

 import socket

 HOST = 'localhost'
PORT = 50029
BUFSIZE = 1024
ADDR = (HOST,PORT) tcpconn = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
tcpconn.connect(ADDR) while True:
data = input('>')
if not data:
break
tcpconn.send(data.encode())
data = tcpconn.recv(BUFSIZE).decode()
if not data:
break
print(data) tcpconn.close()

最新文章

  1. BZOJ3752 : Hack
  2. Java socket 多线程编程 示例
  3. Linux备份入门:3种克隆方法详解_Clonezilla
  4. Vue.js之初印象
  5. js 点名
  6. oracle_彻底删除oracle
  7. json格式数据,将数据库中查询的结果转换为json, 然后调用接口的方式返回json(方式一)
  8. promise/bluebird源码
  9. redhat6.4配置yum
  10. Selenium Grid分布式测试入门详解
  11. 大数据项目之_15_帮助文档_NTP 配置时间服务器+Linux 集群服务群起脚本+CentOS6.8 升级到 python 到 2.7
  12. 简单酷炫的Canvas数字时钟
  13. SpringBoot--web版的ocr
  14. webView 获取内容高度不准确的原因是因为你设置了某个属性
  15. 我的代码-cleaning
  16. 对数据进行GZIP压缩或解压缩
  17. 理解 Linux 配置文件【转】
  18. java骰子求和算法
  19. 爬虫初窥day2:正则
  20. MySQL Json类型的数据处理

热门文章

  1. HDU 2058 The sum problem 数学题
  2. 系统学习(javascript)_基础(数据类型之间的转换)
  3. 关于Unix/Linux的终端、伪终端、控制台和shell
  4. [MySQL FAQ]系列 — EXPLAIN结果中哪些信息要引起关注
  5. HDU 6061 RXD and functions
  6. 关于vc++ 6.0 编译器,点打开文件时自动关闭
  7. java基础67 JavaScript通过关系找节点、添加附件(网页知识)
  8. Oracle 函数 “自动生成订单号”
  9. 产看Linux运行时间
  10. Eclipse 配置语言环境