python小白之搭建网络聊天室
时间:2023-07-22 10:15:01 | 来源:网站运营
时间:2023-07-22 10:15:01 来源:网站运营
python小白之搭建网络聊天室:
群聊聊天室
功能 :
1.有人进入聊天室需要输入姓名,姓名不能重复
2.有人进入聊天室时,其他人会收到通知:xxx 进入了聊天室
3. 一个人发消息,其他人会收到:xxx : xxxxxxxxxxx
4. 有人退出聊天室,则其他人也会收到通知: xxx退出了聊天室
5.扩展功能:服务器可以向所有用户发送公告:管理员消息: xxxxxxxxx
技术点:
1.采用数据报套接字,搭建聊天室通信网络
2.使用多进程,协同处理收发消息
技术实现
1.通信网络搭建
使用socket数据报套接字搭建聊天室服务端以及客户端
2.加入聊天室:
客户端:1.输入聊天昵称
2.发送加入请求
3.成功加入聊天室
服务端:1. 接收请求 (请求类型区分)
2. 判断名字是否重复
3. 重复将结果返回给客户端
4. 不重复则将此客户端加入本地记录并告知其他客户端xxx进入聊天室
2.聊天功能
客户端:创建新的进程,一个进程处理消息的发送,一个进程处理消息的接收
服务端:接收客户端消息,转发给其他客户端
3.退出聊天
客户端:客户端退出进程,结束聊天
服务端:接收客户端退出消息
告知其他客户端xxx已退出群聊
删除退出客户端的本地记录
4.群管理员
服务端:创建新的进程,实现群管理
经上,聊天室项目思路整理清楚,接下来动手写代码,在实现一个功能后随即进行测试以便及时发现错误,进行更正。整体代码实现如下:
总结:
敲写代码很简单,难的是怎么运用代码去实现逻辑功能,在设计项目的时候思路是非常重要的,从整体到细节,一步一步去实现,过程要细心点,不要着急,此项目重在理解python中网络编程套接字的使用以及配合多进程的使用,用来小白练手再合适不过了,希望从项目的设计到项目实现可以帮助到一些小白,能给到你们积极的影响。最后你也可以进行更多功能的拓展,不局限于此,有想法就去实现,加油!