Python Socket编程之多线程聊天室


Posted in Python onJuly 28, 2018

本文为大家分享了Python多线程聊天室,是一个Socket,两个线程,一个是服务器,一个是客户端。
最近公司培训,要写个大富翁的小程序,准备做个服务器版的,先练练手。

代码:

#coding = utf-8

import socket
import threading

class UdpServer(threading.Thread):
 def __init__(self):
  threading.Thread.__init__(self)
  self.address = ('127.0.0.1', 10000)
  self.s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
  self.s.bind(self.address)
  self.stop_flag = False


 def recieve_msg(self):
  (data, addr) = self.s.recvfrom(2048)
  if data:
   print 'recieve data from', addr
   print data

 def run(self):
  while not self.stop_flag:
   self.recieve_msg()

 def stop(self):
  self.stop_flag = True

class UdpClient(threading.Thread):
 def __init__(self):
  threading.Thread.__init__(self)
  self.address = ('127.0.0.1', 10001)
  self.s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
  self.stop_flag = False

 def send_msg(self):
  data = raw_input()
  if not data:
   print 'Wrong inpiut'
   return
  else:
   self.s.sendto(data, self.address)

 def run(self):
  while not True:
   self.send_msg()


 def stop(self):
  self.stop_flag = True


def main():
 t1 = UdpServer()
 t2 = UdpClient()
 t1.start()
 t2.start()



if __name__ == '__main__':
 main()

Python Socket编程之多线程聊天室

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python爬取国外天气预报网站的方法
Jul 10 Python
python二分查找算法的递归实现方法
May 12 Python
Ruby元编程基础学习笔记整理
Jul 02 Python
tensorflow实现简单的卷积网络
May 24 Python
python使用opencv实现马赛克效果示例
Sep 28 Python
np.newaxis 实现为 numpy.ndarray(多维数组)增加一个轴
Nov 30 Python
Python合并2个字典成1个新字典的方法(9种)
Dec 19 Python
Python3.x+迅雷x 自动下载高分电影的实现方法
Jan 12 Python
python爬虫学习笔记之pyquery模块基本用法详解
Apr 09 Python
Python HTMLTestRunner测试报告view按钮失效解决方案
May 25 Python
浅谈matplotlib 绘制梯度下降求解过程
Jul 12 Python
Pycharm自动添加文件头注释和函数注释参数的方法
Oct 23 Python
python实现点对点聊天程序
Jul 28 #Python
基于python实现聊天室程序
Jul 27 #Python
Python中return self的用法详解
Jul 27 #Python
TensorFlow打印tensor值的实现方法
Jul 27 #Python
解决tensorflow测试模型时NotFoundError错误的问题
Jul 27 #Python
Tensorflow 同时载入多个模型的实例讲解
Jul 27 #Python
Tensorflow加载预训练模型和保存模型的实例
Jul 27 #Python
You might like
隐藏X-Space个人空间下方版权方法隐藏X-Space个人空间标题隐藏X-Space个人空间管理版权方法
2007/02/22 PHP
JSON PHP中,Json字符串反序列化成对象/数组的方法
2018/05/31 PHP
Firefox/Chrome/Safari的中可直接使用$/$$函数进行调试
2012/02/13 Javascript
JS截取字符串常用方法详细整理
2013/10/28 Javascript
javascript的动态加载、缓存、更新以及复用(一)
2014/06/09 Javascript
BootStrap 智能表单实战系列(二)BootStrap支持的类型简介
2016/06/13 Javascript
EasyUI创建对话框的两种方式
2016/08/23 Javascript
vuejs动态组件给子组件传递数据的方法详解
2016/09/09 Javascript
jQuery动态修改字体大小的方法【测试可用】
2016/09/09 Javascript
vue-router传参用法详解
2019/01/19 Javascript
vue+element UI实现树形表格带复选框的示例代码
2019/04/16 Javascript
Vue运用transition实现过渡动画
2019/05/06 Javascript
vue+mock.js实现前后端分离
2019/07/24 Javascript
node 解析图片二维码的内容代码实例
2019/09/11 Javascript
vue 解决uglifyjs-webpack-plugin打包出现报错的问题
2020/08/04 Javascript
[01:37]DOTA2超级联赛专访ChuaN 传奇般的电竞之路
2013/06/19 DOTA
[03:56]DOTA2完美大师赛趣味视频之小鸽子和Mineski打台球
2017/11/24 DOTA
[01:20:30]OG vs LGD 2018国际邀请赛淘汰赛BO3 第四场 8.26
2018/08/30 DOTA
[00:06]Yes,it worked!小卡尔成功穿越时空加入战场!
2019/07/20 DOTA
python使用psutil模块获取系统状态
2016/08/27 Python
浅析使用Python搭建http服务器
2019/10/27 Python
Python倒排索引之查找包含某主题或单词的文件
2019/11/13 Python
Python如何通过Flask-Mail发送电子邮件
2020/01/29 Python
pyqt5 QlistView列表显示的实现示例
2020/03/24 Python
HTML5如何使用SVG的方法示例
2019/01/11 HTML / CSS
美国沃尔玛网上超市:Walmart
2020/08/14 全球购物
Java基础知识面试要点
2016/07/29 面试题
公司营业员的自我评价
2014/03/04 职场文书
《海伦?凯勒》教学反思
2014/04/17 职场文书
大学优秀班集体申报材料
2014/05/23 职场文书
2014党员民主评议个人总结
2014/09/10 职场文书
民警个人对照检查剖析材料
2014/09/17 职场文书
2014教师年度工作总结
2014/11/10 职场文书
黑暗中的舞者观后感
2015/06/18 职场文书
运动会闭幕式致辞
2015/07/29 职场文书
Beekeeper Studio开源数据库管理工具比Navicat更炫酷
2022/06/21 数据库