Python实现简易聊天室(Linux 终端)

本文介绍了如何使用Python在Linux终端创建一个简易聊天室,具备姓名唯一、消息广播、用户进出通知等功能。采用UDP套接字,服务端处理请求并发送管理员消息,客户端执行各类操作。通过多进程分别处理收发,确保聊天室的正常运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

群聊聊天室
1.功能:类似qq群聊功能
1.有人进入聊天室需要输入姓名,姓名不能重复
2.有人进入聊天室,其他人会受到通知
xxx进入聊天室
3.一个人发消息,其他人会受到消息
xxx:xxxxxxxx
4.有人退出聊天室,其他人也会收到通知
xxx退出聊天室
5.扩展功能:服务端消息公告,服务端发送消息所有人都能收到
管理员消息:xxxxxxxx
2.确定技术模型
1.服务端和客户端
服务端处理请求,发送管理员消息
客户端执行各种功能
2.套接字选择:udp套接字
3.消息发送模型:转发
客户端 ~> 服务端 ~> 其他客户端
4.存储用户信息:{name:addr}
5.处理收发关系:多进程分别处理收发
3.注意事项
1.设计封装方案
2.写一个功能模块测试一个模块
3.注意注释的添加

#coding =utf-8
'''
chat room
env:python3.5
exc:socket and fork
name:mianmabb
email:mianmabb@163.com
服务端功能:
1.搭建网络通信
2.处理进入聊天室
    * 接收姓名
    * 判断是否允许进入
    * 将结果反馈给客户端
    * 如果不允许则结束,允许则将用户插入数据结构
    * 给其他人发送通知
3.处理聊天
    * 接收消息,判断消息类型,分为L(输入姓名),C(发消息),Q(退出聊天室)
    * 将消息转发
4.处理退出聊天室
5.发送管理员消息	
'''

from socket import *
from os import *
from sys import *

user = {}   #创建空字典用来存储用户的昵称和地址

#处理登录
def do_login(s,name,addr):
    if name in user:    #判断昵称是否已经存在
       
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值