龙空技术网

用python写个多人聊天室

淘气的python 783

前言:

当前你们对“python多人开发”大致比较关心,我们都想要知道一些“python多人开发”的相关内容。那么小编在网摘上收集了一些有关“python多人开发””的相关文章,希望姐妹们能喜欢,同学们一起来了解一下吧!

大学在机房上课,虽然能够玩电脑,但是大家的电脑去没有相互沟通的工具,因此少了一些学习的乐趣在其中。以前就构思过用python写个聊天软件,而且还用tkinter写个客户端。

这就是我写的客户端,我感觉还可以,但是当时给同学用的时候,出来了一些问题。现在就不说太多了,等以后我优化好了,再专门写一篇文章。今天我们使用的客户端是电脑自带的telnet

telnet 加地址加端口,别忘了中间的空格。

服务器使用的是asyncore和asynchat模块,是python中很有名的异步模块,使用它们可以完成单线程下的并发。

首先创建ChartServer类,用来绑定地址,侦听端口。它继承dispatcher类,当用客户端进行连接是,会自动调用handle_accept方法

在handle_accept方法中实例化ChartSession,ChartSession主要用来处理用户传来的数据。

它的push方法可以直接将数据发给客户端,非常好用。

使用这两个方法接收并发给用户数据。程序的大体就这样,来看看效果

你发什么,它就返回什么,不同的是,它会返回给所以连接它的客户端。

这是这个程序的最初实现,只实现了传输数据,但是并不知道是谁发的消息,因此可以进行优化,确定是哪一个客户端。

私信回复聊天室获取源码

标签: #python多人开发