黑松山资源网 Design By www.paidiu.com
本文实例为大家分享了使用python的twisted框架编写一个简单的聊天室具体代码,供大家参考,具体内容如下
下面是基本架构
代码:
# -*- coding:utf-8 -*- from twisted.internet.protocol import Factory from twisted.protocols.basic import LineReceiver from twisted.internet import reactor user = {} class ChatReci(LineReceiver): #定义一个类,这里继承的是LineReceiver def __init__(self): #初始化2个变量 self.name = '' self.state = "game" def connectionMade(self): #连接协议,当客户端连接即发出消息 self.sendLine("input you name") def lineReceived(self, data): #这个函数定义了取名 打印欢迎界面,以及发送信息给连上来的用户 if self.name == '': #判断名字是否为空 如果为空就进行下面的操作 self.name = data #给self.name赋值 self.sendLine("you welcome, %s!" % (self.name)) #打印欢迎信息 user[self.name] = self #赋值给user print '%s loging' %data #打印登录信息 else: #不为空就打印信息 message = "<%s> %s" % (self.name, data) #定义聊天信息 for ur,protocol in user.items(): #取他的用户名 if protocol != user: #判断他是不是一个用户 如果不是就传送消息 protocol.sendLine(message) #传送消息 factory = Factory() #定义工厂 factory.protocol = ChatReci #绑定我的类 reactor.listenTCP(22222, factory) #绑定端口和工厂 reactor.run() #启动
效果图:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
黑松山资源网 Design By www.paidiu.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
黑松山资源网 Design By www.paidiu.com
暂无评论...
更新日志
2024年10月09日
2024年10月09日
- 【原神】V5.0攻略 | 林尼攻略一图流
- 李翊君.1993-相思的烈酒【上华】【WAV+CUE】
- 古巨基.1998-LEO.KU(国)【千禧年代】【WAV+CUE】
- 郭子.2001-原来你什么都不想要创作集丫滚石】【WAV+CUE】
- 《使命召唤:黑色行动6》新预告公布!10月25日发售
- Atlus《暗喻幻想》媒体评分汇总:高分好评如潮!
- 2024金摇杆奖提名揭晓 《黑神话》角逐最佳视觉设计!
- 群星《新说唱2024 第3期 (上)》[320K/MP3][32.76MB]
- 群星《新说唱2024 第3期 (上)》[FLAC/分轨][95.38MB]
- 群星《新说唱2024 第3期 (下)》[320K/MP3][31.36MB]
- 幻兽帕鲁手游什么时候正式上线 最新消息一览
- 西普大陆BOSS位置盘点 解锁天启纪元玩法
- 西普大陆精灵进阶培养攻略 精灵养成指南
- dnf手游法控法系职业哪个强 dnf手游法控法系职业强度排行
- 魔兽世界血藤护目镜图纸在哪买 wlk血藤护目镜图纸购买位置介绍