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的Django框架中的通用视图
May 04 Python
Python 专题四 文件基础知识
Mar 20 Python
python3 中文乱码与默认编码格式设定方法
Oct 31 Python
解决python3.5 正常安装 却不能直接使用Tkinter包的问题
Feb 22 Python
pyqt5之将textBrowser的内容写入txt文档的方法
Jun 21 Python
Python操作MongoDb数据库流程详解
Mar 05 Python
浅谈Python中的字符串
Jun 10 Python
使用Python解析Chrome浏览器书签的示例
Nov 13 Python
pycharm + django跨域无提示的解决方法
Dec 06 Python
Python关于拓扑排序知识点讲解
Jan 04 Python
Python趣味挑战之教你用pygame画进度条
May 31 Python
Python 游戏大作炫酷机甲闯关游戏爆肝数千行代码实现案例进阶
Oct 16 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编程效率 引入缓存机制提升性能
2010/02/15 PHP
PHP下利用header()函数设置浏览器缓存的代码
2010/09/01 PHP
php删除文件夹及其文件夹下所有文件的函数代码
2013/01/23 PHP
phpadmin如何导入导出大数据文件及php.ini参数修改
2013/02/18 PHP
php实现检查文章是否被百度收录
2015/01/27 PHP
php代码检查代理ip的有效性
2016/08/19 PHP
浅谈PHP实现大流量下抢购方案
2017/12/15 PHP
AlertBox 弹出层信息提示框效果实现步骤
2010/10/11 Javascript
jQuery fadeTo方法调整图片的透明度使用介绍
2013/05/06 Javascript
js jquery获取随机生成id的服务器控件的三种方法
2013/07/11 Javascript
基于pthread_create,readlink,getpid等函数的学习与总结
2013/07/17 Javascript
Javascript基础教程之变量
2015/01/18 Javascript
JavaScript面对国际化编程时的一些建议
2015/06/24 Javascript
分享12个非常实用的JavaScript小技巧
2016/05/11 Javascript
基于vue cli重构多页面脚手架过程详解
2018/01/23 Javascript
vue源码中的检测方法的实现
2019/09/26 Javascript
vue  elementUI 表单嵌套验证的实例代码
2019/11/06 Javascript
python基于xml parse实现解析cdatasection数据
2014/09/30 Python
python2.7读取文件夹下所有文件名称及内容的方法
2018/02/24 Python
Python zip()函数用法实例分析
2018/03/17 Python
python逐行读写txt文件的实例讲解
2018/04/03 Python
Python爬虫框架scrapy实现downloader_middleware设置proxy代理功能示例
2018/08/04 Python
python五子棋游戏的设计与实现
2019/06/18 Python
python 实现快速生成连续、随机字母列表
2019/11/28 Python
Python for循环搭配else常见问题解决
2020/02/11 Python
pytorch实现seq2seq时对loss进行mask的方式
2020/02/18 Python
python爬虫scrapy框架的梨视频案例解析
2021/02/20 Python
介绍CSS3使用技巧5个
2009/04/02 HTML / CSS
Html5实现首页动态视频背景的示例代码
2019/09/25 HTML / CSS
阿联酋电子产品购物网站:Menakart
2017/09/15 全球购物
在校生汽车维修实习自我鉴定
2013/09/19 职场文书
运动会广播稿100字
2014/09/14 职场文书
英文商务邀请函范文
2015/01/31 职场文书
工程部经理岗位职责
2015/02/02 职场文书
2016关于军训的心得体会
2016/01/11 职场文书
Python使用OpenCV和K-Means聚类对毕业照进行图像分割
2021/06/11 Python