打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
用Python写一个简单的聊天小程序

学习Python已经快一年了,一路走来,有辛酸也有欢乐。在学完了基础的编程知识后,便开始了对Python的应用做了研究。第一个接触的是Python web开发,学了一个多月的前端之后,开始了对Python web框架的研究。就这样,学了一段东西之后,基本能写一些简答的网页。可是我发现自己仅仅基于别人的框架去写,并不理解其中的原理所在。于是便从最开始的socket开始研究,想要一步步写出自己的框架。后来接触了异步,了解了tornado框架。写出了自己的异步非堵塞框架,尽管写的并不是很好,还需要完善,但毕竟写了出来,因此想要一点点的记录下来

话不多说,直接进入正题。今天写一个简单的即时交流小程序

先来看看服务端代码

首先创建一个socket对象,其中有两个默认参数

family=AF_INET, type=SOCK_STREAM

第一个代表IPV6,第二个代表使用TCP协议。接着绑定IP地址(元组格式),listen表示最大连接数。

accept表示服务器在监听,等待客户端连接,默认堵塞,即程序会卡在这里,直到客户端连接。一旦客户端连接,将返回两个对象,一个是与客户端连接的socket对象,另外一个是客户端的地址

recv函数用来接收客户端的数据,1024表示最大接收字节数

send函数用来发给客户端数据。在socket中所有数据以字节传输

再来看看客户端

和服务端一样,要先实例化一个对象,使用connect函数连接服务端的accept函数。同样使用send和recv函数来收发数据。

开看看完整的代码

服务端

客户端

其中使用了while循环来多次收发数据。

私信回复源码获取源代码

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
常用的Python网络编程模块详解!
看了这篇文章,你就能轻松掌握Python Socket编程啦!
Python socket 非阻塞
Python进阶记录之网络编程(三)
Python 撸一个 Web 服务器-第2章:Hello World
盘点python socket 中recv函数的坑
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服