客户端:

#-*- coding:utf-8 -*-
#客户端程序
import socket client = socket.socket() #1、创建一个客户端对象 client.connect(('localhost',2235)) #2、连接到服务器 while True:
msg = input("-->").strip() client.send(msg.encode()) #3、发送数据 data = client.recv(1024) #4、接收数据 d = data.decode() print('接受的数据:',d) client.close() #5、关闭客户端

服务器:

#-*- coding:utf-8 -*-
#服务器程序
import socket server = socket.socket() #1、创建服务器套接字对象 server.bind(('localhost',2235)) #2、绑定ip和端口 server.listen() #3、让套接字对象处于监听状态
print("正在监听...") while True:
conn,addr = server.accept() #接收客户端报文
print("报文来了!")
print("conn:",conn,"addr:",addr) while True:
data = conn.recv(1024) #接收报文中的数据
if not data:break
else:
d = data.decode()
print("客户端的数据:",d)
conn.send(data.upper()) #发送响应报文 server.close() #关闭服务器

附加:

如何在sublime3中关闭正在执行的程序?

答:tools-->取消编译。

socket编程之多次收发数据的更多相关文章

  1. Python——用socket和线程实现全双工收发数据

    用socket和线程实现全双工收发数据 1.基础知识 Socket(套接字) 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket.由此知道套接字是全双工的. 线程 ...

  2. socket编程(struct报头)网络编程

    目录 一:socket编程 1.简介 2.参数说明: 3.socket套接字方法 4.socket编程思路: 二:socket套接字编程 1.socket简易版编程 2.通信循环 三:通信循环及代码优 ...

  3. 多线程socket UDP收发数据

    多线程socket收发数据 from threading import Thread from socket import * def sendData(): while True: sendInfo ...

  4. C/C++ socket编程教程之九:TCP的粘包问题以及数据的无边界性

    C/C++ socket编程教程之九:TCP的粘包问题以及数据的无边界性 上节我们讲到了socket缓冲区和数据的传递过程,可以看到数据的接收和发送是无关的,read()/recv() 函数不管数据发 ...

  5. boost.asio与boost.log同时使用导致socket不能正常收发数据

    现象: 1. 没有使用boost.log前能正常收发数据 2.加入boost.log后async_connect没有回调 fix过程: 1. gdb调试发现程序block在pthread_timed_ ...

  6. python网络编程-socket编程

     一.服务端和客户端 BS架构 (腾讯通软件:server+client) CS架构 (web网站) C/S架构与socket的关系: 我们学习socket就是为了完成C/S架构的开发 二.OSI七层 ...

  7. socket编程

    一.socket地址的数据类型及相关函数 socket API是一层抽象的网络编程接口,适用于各种底层网络协议,如IPv4.IPv6.UNIX Domain Socket.然而各种网络协议的地址格式并 ...

  8. python学习道路(day8note)(抽象类,类的方法,异常处理,socket编程)

    1.#面向对象 #抽象接口 === 抽象类 #就是架构师给你一个架子,你们去写,如果满足不了直接报错 #python2 print("python2---抽象类".center(2 ...

  9. TCP与UDP在socket编程中的区别

    一.TCP与UDP的区别 基于连接与无连接  对系统资源的要求(TCP较多,UDP少)  UDP程序结构较简单  流模式与数据报模式  TCP保证数据正确性,UDP可能丢包  TCP保证数据顺序,UD ...

随机推荐

  1. 【2-SAT(两次DFS版)】BZOJ1823-[JSOI2010]满汉全席

    [题目大意] 有n个材料,m个评委.每种材料可以被用来做满族菜或汉族菜,m个评委有两种可以让他满意的猜中.问是否可以满足所有评委要求? [思路] 每天只能做三道题,我已经是一个废人了……(葛优躺.jp ...

  2. java-List集合遍历,删除或增加特定的元素

    1.for(int i=0; i<list.size(); i++) 2.for(Object object : list)  实质调用的 list.iterator() 3.list.iter ...

  3. 【PHP手册】 PHP debug_backtrace() 函数

    定义和用法 PHP debug_backtrace() 函数生成一个 backtrace(回溯信息). 该函数返回一个关联数组.下面是可能返回的元素: 名称 类型 描述 function 字符串 当前 ...

  4. Telnet环境变量

    转:http://www.cnpaf.net/Class/Telnet/200408/2.html 当前位置: 网站首页>>协议大全>>TELNET协议>> Tel ...

  5. LiDAR Textbook & Automated Road Network Extraction

    Original article published here, Posted on March 18, 2009 by lidar A positive feedback loop is begin ...

  6. 【POI】对于POI无法处理超大xls等文件,官方解决方法【已解决】【多线程提升速率待定】

    本次使用POI处理xlsx文件,莫名的遇到了一个无法逾越的问题. 总共71个xlsx文件,单个文件最大达到50M以上,71个xls文件摆在那里就有3-4G的大小. 在起始处理的时候,发现原本适用于正常 ...

  7. [Android 新特性] 谷歌发布Android Studio开发工具1.0正式版(组图) 2014-12-09 09:35:40

    Android Studio是谷歌于13年I/O大会推出的Android开发环境,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提供了集成的Androi ...

  8. Kubernetes连接外部数据源

    Kubernetes架构下比较核心的问题是数据如何persistance,虽然提供了Persistent volumn的方式,但是对于像数据库之类的产品在kubernetes集群环境中运行和管理还是很 ...

  9. servlet之request和response的使用区分

    有的时候在写servlet程序时,我总是被一个方法该用request去调用.还是用response去调用而困惑.从而造成编程时间的延长. 我在区分request和response的使用时,使用的方法是 ...

  10. MyEclipse中快捷键

    ------------------------------------- MyEclipse 快捷键1(CTRL) ------------------------------------- Ctr ...