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简单实现基于SSL的IRC bot实例
Jun 15 Python
在Windows系统上搭建Nginx+Python+MySQL环境的教程
Dec 25 Python
Python基于递归算法实现的走迷宫问题
Aug 04 Python
python修改list中所有元素类型的三种方法
Apr 09 Python
Linux下python制作名片示例
Jul 20 Python
python 解决flask uwsgi 获取不到全局变量的问题
Dec 22 Python
使用python处理题库表格并转化为word形式的实现
Apr 14 Python
python3检查字典传入函数键是否齐全的实例
Jun 05 Python
Python3 搭建Qt5 环境的方法示例
Jul 16 Python
python进行OpenCV实战之画图(直线、矩形、圆形)
Aug 27 Python
Python 操作 MySQL数据库
Sep 18 Python
Python帮你解决手机qq微信内存占用太多问题
Feb 15 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
Excel数据导入Mysql数据库的实现代码
2008/06/05 PHP
PHP中的socket_read和socket_recv区别详解
2015/02/09 PHP
学习php设计模式 php实现建造者模式
2015/12/07 PHP
php cli模式下获取参数的方法
2017/05/05 PHP
PHP crypt()函数的用法讲解
2019/02/15 PHP
Thinkphp5.0 框架的请求方式与响应方式分析
2019/10/14 PHP
修改发贴的编辑功能
2007/03/07 Javascript
js 幻灯片的实现
2011/12/06 Javascript
js自动生成的元素与页面原有元素发生堆叠的解决方法
2013/10/24 Javascript
基于JS实现新闻列表无缝向上滚动实例代码
2016/01/22 Javascript
JQuery解析XML数据的几个简单实例
2016/05/18 Javascript
基于JS代码实现简单易用的倒计时 x 天 x 时 x 分 x 秒效果
2017/07/13 Javascript
使用express来代理服务的方法
2019/06/21 Javascript
elementUI 动态生成几行几列的方法示例
2019/07/11 Javascript
微信小程序日历插件代码实例
2019/12/04 Javascript
原生JS实现顶部导航栏显示按钮+搜索框功能
2019/12/25 Javascript
js实现限定区域范围拖拉拽效果
2020/11/20 Javascript
Python3标准库总结
2019/02/19 Python
Django 多环境配置详解
2019/05/14 Python
pandas的qcut()方法详解
2019/07/06 Python
Python对列表的操作知识点详解
2019/08/20 Python
python几种常用功能实现代码实例
2019/12/25 Python
python 实用工具状态机transitions
2020/11/21 Python
HTML5中的进度条progress元素简介及兼容性处理
2016/06/02 HTML / CSS
浅析HTML5中的download属性使用
2019/03/13 HTML / CSS
银行员工职业规划范文
2014/01/21 职场文书
如何打造一封优秀的留学推荐信
2014/01/25 职场文书
幼师求职自荐信范文
2014/01/26 职场文书
创业计划书的写作技巧及要点
2014/01/31 职场文书
讲解员培训方案
2014/05/04 职场文书
杭州西湖英语导游词
2015/02/03 职场文书
企业财务经理岗位职责
2015/04/08 职场文书
Django实现聊天机器人
2021/05/31 Python
CSS实现九宫格布局(自适应)的示例代码
2022/02/12 HTML / CSS
解决MySQL添加新用户-ERROR 1045 (28000)的问题
2022/03/03 MySQL
JAVA长虹键法之建造者Builder模式实现
2022/04/10 Java/Android