2019独角兽企业重金招聘Python工程师标准>>>

#server.py
#coding:utf-8
import socketsk = socket.socket()
ip_port = ('127.0.0.1',9999)
sk.bind(ip_port)
sk.listen(5)while True:conn,address = sk.accept()conn.send('hello.')flag = Truewhile flag:data = conn.recv(1024)print dataif data =='exit':flag = Falseconn.send('sx')conn.close()
#client.py
#coding:utf-8import socketclient = socket.socket()
ip_port = ('127.0.0.1',9999)client.connect(ip_port)
while True:data = client.recv(1024)print datainp = raw_input('client:')client.send(inp)if inp =='exit':break

异步多线程服务端Server.py

#coding:utf-8
import SocketServerclass  MyServer(SocketServer.BaseRequestHandler):def setup(self):passdef handle(self):# print self.request,self.client_address,self.server#self.request = socket#conn = self.requestconn.send('hello.')flag = Truewhile flag:data = conn.recv(1024)print dataif data =='exit':flag = Falseconn.send('asd')conn.close()def finish(self):passif __name__ == '__main__':server = SocketServer.ThreadingTCPServer(('127.0.0.1',9999),MyServer)server.serve_forever()

socket 上传文件

#!/usr/bin/env python
#coding:utf-8import SocketServer
import osclass MyServer(SocketServer.BaseRequestHandler):def handle(self):base_path = 'G:/temp'conn = self.requestprint 'connected...'while True:pre_data = conn.recv(1024)#获取请求方法、文件名、文件大小cmd,file_name,file_size = pre_data.split('|')#已经接收文件的大小recv_size = 0#上传文件路径拼接file_dir = os.path.join(base_path,file_name)f = file(file_dir,'wb')Flag = Truewhile Flag:#未上传完毕,if int(file_size)>recv_size:#最多接收1024,可能接收的小于1024data = conn.recv(1024) recv_size+=len(data)#上传完毕,则退出循环else:recv_size = 0Flag = False#写入文件f.write(data)print 'upload successed.'f.close()instance = SocketServer.ThreadingTCPServer(('127.0.0.1',9999),MyServer)
instance.serve_forever()server

转载于:https://my.oschina.net/u/2411815/blog/628847

python socket学习相关推荐

  1. python socket epoll_python 关于epoll的学习

    在linux中,默认情况下所有的socket都是blocking;当 用户进程调用了recvfrom这个系统调用,kernel就开始了IO的第一个阶段:准备数据.对于network io来说,很多时候 ...

  2. python socket编程_Python学习记录-socket编程

    1. OSI七层模型详解 2. Python socket 什么是 Socket? Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答 ...

  3. python教学在线观看-python在线学习

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 所以说学懂python应该不是一件太困难的事情,更重的事情是如何将python使 ...

  4. 怎么自学python自动化测试-学习自动化测试,如何学习Python语言?

    一.Python常用领域Python用于简单脚本编程,如编写2048小游戏或12306的自动抢票软件: Python用于系统编程,如开发系统应用: Python用于开发网络爬虫: 有资料奉上,可以看看 ...

  5. Python Socket 编程——聊天室示例程序

    上一篇 我们学习了简单的 Python TCP Socket 编程,通过分别写服务端和客户端的代码了解基本的 Python Socket 编程模型.本文再通过一个例子来加强一下对 Socket 编程的 ...

  6. php socket 握手,python Socket之客户端和服务端握手详细介绍

    这篇文章主要为大家详细介绍了python Socket之客户端和服务端握手,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 简单的学习下利用socket来建立客户端和服务端之间的连接并且发送数据 1 ...

  7. python socket清空接受区_原始Python服务器

    之前我的Python教程中有人留言,表示只学Python没有用,必须学会一个框架(比如Django和web.py)才能找到工作.而我的想法是,掌握一个类似于框架的高级工具是有用的,但是基础的东西可以让 ...

  8. python socket.error: [Errno 10054] 远程主机强迫关闭了一个现有的连接。问题解决方案

    python socket.error: [Errno 10054] 远程主机强迫关闭了一个现有的连接.问题解决方案: 前几天使用python读取网页.因为对一个网站大量的使用urlopen操作,所以 ...

  9. python网络编程讲解_详解Python Socket网络编程

    Socket 是进程间通信的一种方式,它与其他进程间通信的一个主要不同是:它能实现不同主机间的进程间通信,我们网络上各种各样的服务大多都是基于 Socket 来完成通信的,例如我们每天浏览网页.QQ ...

最新文章

  1. c# 计算点到线段的距离
  2. linux乌邦图更改ip,Linux系统下图形界面更改IP地址分享
  3. 交叉熵(cross_entropy)作为损失函数在神经网络中的作用
  4. mac上SVN简单几个命令
  5. openresty安装(centos)
  6. ROS笔记(8) 服务通信
  7. 对老年人友好!滴滴开通打车400热线
  8. 80×86汇编常用指令
  9. 一切想要发财的人,你都要善于看到隐形的东西
  10. 蓝桥杯 ALGO-115 算法训练 和为T Java版
  11. golang连接mysql操作示例增删改查
  12. 使用Visual Studio SDK制作GLSL词法着色插件
  13. 源码大招:不服来战!撸这些完整项目,你不牛逼都难! 1
  14. LINUX下用C遍历一个目录的代码
  15. FPGA的I2S采集数据处理
  16. JDK 的下载与安装(非常详细!)
  17. MIT Molecular Biology 笔记1 DNA的复制,染色体组装
  18. Ubuntu(debian) 程序 dep 打包
  19. RNA-seq那些事儿
  20. 徐姗姗 20190905-3 命令行和控制台编程

热门文章

  1. 鱼和熊掌可以兼得,云原生开启“数据库大数据一体化”新时代
  2. 顶会ACL这十年:百度披荆斩棘,中国NLP乘风破浪
  3. 《柳叶刀》:群体免疫不靠谱!欧洲迄今最大新冠血清学调查显示,西班牙抗体阳性率仅5%...
  4. 牛顿棺材板快盖不住了:用深度神经网络解决三体问题,提速一亿倍
  5. Springmvc ajax请求400
  6. oracle中的赋权
  7. 创新创新再创新(4)
  8. Java JVM内存分析
  9. kinect c++
  10. Verilog学习----条件语句、循环语句、块语句与生成语句