twisted:基于python的twisted框架编写一个客户端和服务端的对话聊天空间

目录

输出结果

实现代码


输出结果

更新……

实现代码

#基于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):             #定义一个类,这里继承的是LineReceiverdef __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                 #赋值给userprint ('%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(8000, factory)   #绑定端口和工厂
reactor.run()                            #启动

twisted:基于python的twisted框架编写一个客户端和服务端的对话聊天空间相关推荐

  1. spring整合cxf,轻松编写webService客户端、服务端

    WebService是一种跨编程语言.跨操作系统平台的远程调用技术,广泛应用在实际开发,接口实现,系统集成. 服务端 List item 添加maven依赖 项目中除了spring相关的依赖以外,还需 ...

  2. 基于多线程的TCP局域网通信,客户端向服务端上传 文件简单实现源码

    客户端 import java.io.*; import java.net.Socket;/*** ### 作业3:* 完成文件上传案例学习* - 案例需求* 客户端:数据来自于本地文件,接收服务器反 ...

  3. 基于安卓的企业物流管理系统(Android客户端+JavaSSM服务端开发的物流管理APP)

    摘 要 随着互联网的技术的快速发展和无线网络的更新迭代,使4G网络已成为过去式5G网络蓬勃发展.技术的发展,硬件的提高使人们使用智能手机可以更加快速.便捷的浏览信息.获取信息. 本文首先介绍企业物流管 ...

  4. python生成json接口_基于python的Flask框架写json接口并且结合eolinker进行接口测试

    一.前言 很多时候为了提高软件开发的效率,后端程序人员理想状态下应该编写程序测试接口供前端程序人员进行测试,以便前端的开发.笔者由于项目的需求近期尝试学习了一下测试接口的编写,以Python+Flas ...

  5. python制作物联网控制软件下载_基于Python和Django框架的物联网智能设备管理系统的设计与实现...

    论文写作指导:请加QQ229366758 基于Python和Django框架的物联网智能设备管理系统的设计与实现 作者:未知 摘 要:针对目前日益增多的智能设备提出了兼容性好,稳定性高,易于管理的管理 ...

  6. TensorFlow 基于 Python 的机器学习框架

    人工智能浪潮 近些年,人工智能相关技术的快速发展大家有目共睹,不必多说.在编程语言方面,更多人希望的是具备高效开发效率.跨平台.高度扩展性的语言,尤其是一些AI巨头优先推出支持Python语言的深度学 ...

  7. 基于Python的Flask框架开发的在线电影网站系统(附源码)

    来源丨网络 今天给大家分享的是基于Python的Flask框架开发的在线电影网站系统. 项目介绍 项目介绍:网站前端采用HTML5编写,使用Bootstrap前端开发框架,后端使用Python3语言编 ...

  8. python数据接口设计_基于python的接口测试框架设计(一)连接数据库

    基于python的接口测试框架设计(一)连接数据库 首先是连接数据库的操作,最好是单独写在一个模块里, 然后便于方便的调用,基于把connection连接放在__init__()方法里 然后分别定义D ...

  9. 基于python下django框架 实现校园失物招领系统详细设计

    前言介绍(开发目的和意义) 本课题主要目标是设计并能够实现一个基于web网页的校园失物招领系统,整个网站项目使用了B/S架构,基于python的Django框架下开发:管理员通过后台录入信息.管理信息 ...

最新文章

  1. greenplum 存储过程_如何使用Greenplum提升PB级数据处理能力
  2. Hbase API中常用类介绍和使用
  3. 微软小冰评分接口_微软小冰测颜值准不准?郑爽才得6.3分,较真你就输了
  4. mysql随机显示记录_MySQL随机读取表中记录
  5. Sublime Text提示Unable to download XXX. Please view the console for more details安装插件失败解决
  6. git 大文件报错Out of memory, malloc failed、 The remote end hung up unexpectedly
  7. python操作redis集群_python操作redis集群
  8. java request 处理过程_小猿圈Java开发之从代码看spring mvc请求处理过程
  9. 华为P50标准版规格曝光:或搭载骁龙888 4G
  10. 工作那些事(三十一)怎样带好一个项目团队
  11. 《开源安全运维平台OSSIM最佳实践》媒体推荐
  12. c百分号输出格式汇总
  13. Beta冲刺第二周王者荣耀交流协会第三次会议
  14. php调用shell执行scp,使用shell脚本自动执行scp文件传输
  15. 一定要收藏!!!2019取消管理费最新最全香港开户攻略
  16. ABP框架源码中的Linq扩展方法
  17. CCNP-第十九篇-ISIS(二)
  18. 鸿蒙系统别的手机厂商可以用,鸿蒙有望适配国内其他手机厂商,别再黑了
  19. 编程语言中的鸭子类型 Duck Typing
  20. 用Python编写微信小游戏“跳一跳”的运行脚本

热门文章

  1. FIFO and DMA
  2. linux shel的学习网站(推荐)
  3. Spring MVC源码解析
  4. Spring Boot 应用监控:Actuator与 Admin
  5. 磁盘格式化,磁盘挂载,手动增加swap空间
  6. 使用Gson进行json数据转换list to json 和json to list
  7. 从来没有一种技术是为了解决复用、灵活组合、定制开发的问题
  8. 我肝了一个月,给你写出了这本Java开发手册。
  9. MongoDB 4.2 正式发布,支持分布式事务!
  10. POI各Jar包的作用