Python基于TCP实现会聊天的小机器人功能示例


Posted in Python onApril 09, 2018

本文实例讲述了Python基于TCP实现会聊天的小机器人功能。分享给大家供大家参考,具体如下:

一 代码

1、服务端程序

import socket
words ={'how are you?':'Fine,thank you.',
'how old are you?':'38',
'what is your name?':'Dong FuGuo',
"what's your name?":'Dong FuGuo',
'where do you work?':'SDIBT',
'bye':'Bye'}
HOST =''
PORT =50007
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
#绑定socket
s.bind((HOST, PORT))
#开始监听
s.listen(1)
print('Listening at port:',PORT)
conn, addr = s.accept()
print('Connected by', addr)
while True:
  data = conn.recv(1024)
  data = data.decode()
  ifnot data:
break
print('Received message:', data)
conn.sendall(words.get(data,'Nothing').encode())
conn.close()

2、客户端程序

import socket
HOST ='127.0.0.1'#服务端主机IP地址
PORT =50007#服务端主机端口号
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))#连接连接
while True:
  c = input('Input the content you want to send:')
  s.sendall(c.encode())#发送数据
  data = s.recv(1024)#从客户端接收数据
  data = data.decode()
  print('Received:', data)
  if c.lower()=='bye':
break
s.close()#关闭连接

二 运行结果

Python基于TCP实现会聊天的小机器人功能示例

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

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

Python 相关文章推荐
讲解Python中的标识运算符
May 14 Python
python中list列表的高级函数
May 17 Python
python实现csv格式文件转为asc格式文件的方法
Mar 23 Python
python如何使用unittest测试接口
Apr 04 Python
PyCharm 设置SciView工具窗口的方法
Jan 15 Python
5款Python程序员高频使用开发工具推荐
Apr 10 Python
Python代码使用 Pyftpdlib实现FTP服务器功能
Jul 22 Python
Python 根据日志级别打印不同颜色的日志的方法示例
Aug 08 Python
Kears+Opencv实现简单人脸识别
Aug 28 Python
Python ATM功能实现代码实例
Mar 19 Python
浅谈keras中的Merge层(实现层的相加、相减、相乘实例)
May 23 Python
Python多线程的退出控制实现
Aug 10 Python
Python生成任意范围任意精度的随机数方法
Apr 09 #Python
python网络爬虫学习笔记(1)
Apr 09 #Python
Python中defaultdict与lambda表达式用法实例小结
Apr 09 #Python
Python3 实现随机生成一组不重复数并按行写入文件
Apr 09 #Python
python生成不重复随机数和对list乱序的解决方法
Apr 09 #Python
解决Python的str强转int时遇到的问题
Apr 09 #Python
Python利用matplotlib.pyplot绘图时如何设置坐标轴刻度
Apr 09 #Python
You might like
php error_log 函数的使用
2009/04/13 PHP
PHP CLI模式下的多进程应用分析
2013/06/03 PHP
php unicode编码和字符串互转的方法
2020/08/12 PHP
php实现的统计字数函数定义与使用示例
2017/07/26 PHP
PHP使用PDO调用mssql存储过程的方法示例
2017/10/07 PHP
Extjs EditorGridPanel中ComboBox列的显示问题
2011/07/04 Javascript
jQuery中even选择器的定义和用法
2014/12/23 Javascript
JavaScript实现判断图片是否加载完成的3种方法整理
2015/03/13 Javascript
jQuery使用fadeout实现元素渐隐效果的方法
2015/03/27 Javascript
bootstrap和jQuery.Gantt的css冲突 如何解决
2016/05/29 Javascript
实例解析jQuery中如何取消后续执行内容
2016/12/01 Javascript
前端构建工具之gulp的语法教程
2017/06/12 Javascript
JS实现页面内跳转的简单代码
2017/09/03 Javascript
解决html-jquery/js引用外部图片时遇到看不了或出现403的问题
2017/09/22 jQuery
js装饰设计模式学习心得
2018/02/17 Javascript
angularJs使用ng-repeat遍历后选中某一个的方法
2018/09/30 Javascript
详解如何写出一个利于扩展的vue路由配置
2019/05/16 Javascript
Node爬取大批量文件的方法示例
2019/06/28 Javascript
Vue.js 中的实用工具方法【推荐】
2019/07/04 Javascript
vue中beforeRouteLeave实现页面回退不刷新的示例代码
2019/11/01 Javascript
Vue+tracking.js 实现前端人脸检测功能
2020/04/16 Javascript
js实现拾色器插件(ColorPicker)
2020/05/21 Javascript
js实现淘宝浏览商品放大镜功能
2020/10/28 Javascript
[02:40]DOTA2英雄基础教程 先知
2013/11/29 DOTA
Python深入学习之闭包
2014/08/31 Python
Python打印scrapy蜘蛛抓取树结构的方法
2015/04/08 Python
Python中type的构造函数参数含义说明
2015/06/21 Python
python和pygame实现简单俄罗斯方块游戏
2021/02/19 Python
详解pandas的外部数据导入与常用方法
2019/05/01 Python
Pytorch实现GoogLeNet的方法
2019/08/18 Python
python GUI库图形界面开发之PyQt5窗口布局控件QStackedWidget详细使用方法
2020/02/27 Python
python tkinter之 复选、文本、下拉的实现
2020/03/04 Python
Unineed旗下时尚轻奢网站:FABHunt
2019/05/13 全球购物
2013年最新自荐信范文
2014/06/23 职场文书
Python max函数中key的用法及原理解析
2021/06/26 Python
php访问对象中的成员的实例方法
2021/11/17 PHP