Python基于Socket实现的简单聊天程序示例


Posted in Python onAugust 05, 2017

本文实例讲述了Python基于Socket实现的简单聊天程序。分享给大家供大家参考,具体如下:

需求:SCIENCE 和MOOD两个人软件专业出身,厌倦了大众化的聊天软件,想着自己开发一款简易的聊天软件,满足他们的个性化需求,又不失“专业水准”,Talk is easy, try to code it.

技术:socket,详细可参考前文:Python Socket实现简单TCP Server/client功能

语言:python

尽管socket区分服务器和客户端,但是在聊天程序中两者是平等的关系,都是客户端程序。

Server.py

import socket
host = socket.gethostname()
port = 12345
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.bind((host,port))
s.listen(1)
sock,addr = s.accept()
print('Connection built')
info = sock.recv(1024).decode()
while info != 'exit':
  print('MOOD:'+info)
  send_mes = input()
  sock.send(send_mes.encode())
  if send_mes =='exit':
    break
  info = sock.recv(1024).decode()
sock.close()
s.close()

Client.py

import socket
s= socket.socket()
host = socket.gethostname()
port = 12345
s.connect((host,port))
print('Linked')
info = ''
while info != 'exit':
  print('SCIENCE:'+info)
  send_mes=input()
  s.send(send_mes.encode())
  if send_mes =='exit':
    break
  info = s.recv(1024).decode()
s.close()

效果截图:

Python基于Socket实现的简单聊天程序示例

Python基于Socket实现的简单聊天程序示例

恩,太low了有木有?连个图形化界面都没有,跟别谈其他个性化功能了。希望他们继续努力,早日做出属于他们自己的聊天软件吧!

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python中的闭包实例详解
Aug 29 Python
在Python中用split()方法分割字符串的使用介绍
May 20 Python
Python编程中归并排序算法的实现步骤详解
May 04 Python
Python3 socket同步通信简单示例
Jun 07 Python
Python通过matplotlib绘制动画简单实例
Dec 13 Python
TensorFlow实现Softmax回归模型
Mar 09 Python
pandas 数据归一化以及行删除例程的方法
Nov 10 Python
Python实现EXCEL表格的排序功能示例
Jun 25 Python
教你一步步利用python实现贪吃蛇游戏
Jun 27 Python
python多进程下的生产者和消费者模型
May 07 Python
解决python和pycharm安装gmpy2 出现ERROR的问题
Aug 28 Python
python库sklearn常用操作
Aug 23 Python
Python Socket实现简单TCP Server/client功能示例
Aug 05 #Python
对pandas的dataframe绘图并保存的实现方法
Aug 05 #Python
解决PyCharm中光标变粗的问题
Aug 05 #Python
Python实现的中国剩余定理算法示例
Aug 05 #Python
python爬虫_自动获取seebug的poc实例
Aug 05 #Python
python中的break、continue、exit()、pass全面解析
Aug 05 #Python
Python基于递归算法实现的走迷宫问题
Aug 04 #Python
You might like
计算php页面运行时间的函数介绍
2013/07/01 PHP
PHP关联数组实现根据元素值删除元素的方法
2015/06/26 PHP
php实现的简单美国商品税计算函数
2015/07/13 PHP
『jQuery』取指定url格式及分割函数应用
2013/04/22 Javascript
调整小数的格式保留小数点后两位
2014/05/14 Javascript
Javascript中3种实现继承的方法和代码实例
2014/08/12 Javascript
无限树Jquery插件zTree的常用功能特性总结
2014/09/11 Javascript
jQuery实现鼠标悬停背景翻转的黑色导航菜单代码
2015/09/14 Javascript
jQuery实现的简单折叠菜单(折叠面板)效果代码
2015/09/16 Javascript
bootstrap手风琴制作方法详解
2017/01/11 Javascript
NodeJS配置HTTPS服务实例分享
2017/02/19 NodeJs
Bootstrap jquery.twbsPagination.js动态页码分页实例代码
2017/02/20 Javascript
JS中将多个逗号替换为一个逗号的实现代码
2017/06/23 Javascript
BetterScroll 在移动端滚动场景的应用
2017/09/18 Javascript
Node.js学习之查询字符串解析querystring详解
2017/09/28 Javascript
细说webpack源码之compile流程-rules参数处理技巧(2)
2017/12/26 Javascript
vue自定义键盘信息、监听数据变化的方法示例【基于vm.$watch】
2019/03/16 Javascript
javascript获取元素的计算样式
2019/05/24 Javascript
使用Easyui实现查询条件的后端传递并自动刷新表格的两种方法
2019/09/09 Javascript
vue总线机制(bus)知识点详解
2020/05/10 Javascript
分享8个JavaScript库可更好地处理本地存储
2020/10/12 Javascript
在Django的模型和公用函数中使用惰性翻译对象
2015/07/27 Python
在Linux系统上部署Apache+Python+Django+MySQL环境
2015/12/24 Python
python解决网站的反爬虫策略总结
2016/10/26 Python
python模拟登录并且保持cookie的方法详解
2017/04/04 Python
python创造虚拟环境方法总结
2019/03/04 Python
PyTorch实现AlexNet示例
2020/01/14 Python
python实现将中文日期转换为数字日期
2020/07/14 Python
Python Unittest原理及基本使用方法
2020/11/06 Python
基于Canvas+Vue的弹幕组件的实现
2019/07/23 HTML / CSS
Html5页面点击遮罩层背景关闭遮罩层
2020/11/30 HTML / CSS
澳大利亚设计的婴儿和女孩的衣服:Oobi
2018/12/16 全球购物
护理个人求职信范文
2014/01/08 职场文书
党的群众路线教育实践活动通讯稿
2014/09/10 职场文书
财务会计岗位职责
2015/02/03 职场文书
运动会开幕式通讯稿
2015/07/18 职场文书