编写聊天程序的服务端代码和客户端代码。完成后,先启动服务端代码,然
后启动客户端程序输人问题,服务端可以返回相应的答案。要求服务端代码具
有一定的智能,能够根据不完整的问题识别客户端真正要问的问题。
程序运行后界面如下图所示。
源代码:
服务端 Sever.py:
from os.path import commonprefix
from posixpath import split
import socket
#建立聊天回复字典
words={'how are you?':'Fine,thank you.','how old are you?':'18','what is your name?':'xiaoming','which subject do you like?':'computer science','bye':'Bye'}
s =socket.socket()
s.bind(('127.0.0.1',8000))
s.listen(1)
clientsocket,clientaddress= s.accept()
print('Connection from',clientaddress)
#开始聊天
while True:data=clientsocket.recv(1024).decode()if not data:breakprint('Received:',data)i=0key=''for k in words.keys():data=' '.join(data.split())if len(commonprefix([k,data]))>len(k)*0.75:key=kbreaklength=len(set(data.split())&set(k.split()))if length>i:i=lengthkey=kclientsocket.sendall(words.get(key,'Sorry,can\'t find the question').encode())
clientsocket.close()客户端 Client.py:
import socket
import sys
s =socket.socket()
try:s.connect(('127.0.0.1',8000))
except Exception as e:print('Can\'t find the Sever please try again')sys.exit()
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()测试用例:
how are you
how old are you
what’s your name
bye

Python 实验三 使用 TCP 实现智能聊天机器人相关推荐

  1. 机器人编程python代码_自己动手开发智能聊天机器人完全指南(附python完整源码)...

    一.前言 人工智能时代,开发一款自己的智能问答机器人,一方面提升自己的AI能力,另一方面作为转型AI的实战练习.在此把学习过程记录下来,算是自己的笔记. 二.正文 2.1 下载pyaiml 下载pya ...

  2. python web微信应用(三) 微信智能聊天机器人

    文章目录 前言 一.webwx 模块介绍 二.微信智能聊天 前言 本篇文章作为系列第三篇文章,将实现一个微信智能聊天机器人: 系列其它文章请参考: python web微信应用(一) 微信协议分析 p ...

  3. 基于“机器学习”的智能聊天机器人---python实现(1)

    本博文以自己课程设计为依托,介绍如何利用python语言编程实现基于"机器学习"的智能聊天机器人.由于本项目是自己首次接触python以及利用计算机编程实现小型项目,中途遇到诸多问 ...

  4. 基于“机器学习”智能聊天机器人---python实现(2)

    本博文上接上一篇博文"基于"机器学习"智能聊天机器人---python实现(1)" 博文链接:https://blog.csdn.net/DALEONE/art ...

  5. Python基于AIML智能聊天机器人实战(4)- 机器人自学习能力集成

    一.前言 本文是<Python基于AIML智能聊天机器人实战>第四篇:AIML自学习能力集成: AIML是智能对话机器人具有里程碑意义的开源项目,曾斩获多项国际大奖,是基于检索技术的闲聊式 ...

  6. python微信集成_Python微信公众号后台开发005:集成智能聊天机器人​

    ​给公众号集成一个智能聊天机器人 一.前述 ChatterBot是一个基于机器学习的聊天机器人引擎,构建在python上,主要特点是可以自可以从已有的对话中进行学(jiyi)习(pipei). 二.具 ...

  7. Python基于AIML智能聊天机器人实战视频教程-张子良-专题视频课程

    Python基于AIML智能聊天机器人实战视频教程-244人已学习 课程介绍         Python基于AIML的智能聊天机器人开发实战课程,包括典型案例.基础理论.功能拓展.源码框架解读四个方 ...

  8. 使用 Python 实现一个简单的智能聊天机器人

    使用 Python 实现一个简单的智能聊天机器人 文章目录 使用 Python 实现一个简单的智能聊天机器人 简要说明 总体的思路 需要准备的环境 接收用户的语音输入, 并将其存为音频文件 调用百度A ...

  9. 好想学python机器人_【Python成长之路】从零学GUI -- 制作智能聊天机器人

    [写在前面] 鹏哥:最近老惹小燕同学不开心,结果都没人陪我聊天了.哎,好无聊呀! 肥宅男:女朋友什么的最无聊了,还没我的图灵机器人好玩. 鹏哥:图灵?好巧,和我部门同名. [效果如下] [实现过程] ...

  10. 【Python成长之路】从零学GUI -- 制作智能聊天机器人

    [写在前面] 鹏哥:最近老惹小燕同学不开心,结果都没人陪我聊天了.哎,好无聊呀! 肥宅男:女朋友什么的最无聊了,还没我的图灵机器人好玩. 鹏哥:图灵?好巧,和我部门同名. [效果如下] [实现过程] ...

最新文章

  1. angular指令ng-class巧用
  2. Datawhale组队学习周报(第040周)
  3. android-menudrawer 和SlidingMenu 用法
  4. 这门国产语言终于要发布 1.0 版本了
  5. 【CodeForces - 789D】Weird journey(思维,图的性质,tricks,有坑)
  6. python爬虫反爬 css 知乎 专栏_反反爬虫系列(四)
  7. Python3.x中set()集合的使用方法
  8. linux 触屏设备 无法处理touchevent_一次通讯干扰处理
  9. linux ss命令查看端口监听情况
  10. AfxGetMainWnd 函数
  11. 计算机专业及相关知识测试,计算机知识及测验考试.doc
  12. 继承中各代码块的执行顺序
  13. String Shifting(今日头条2017秋招真题)
  14. P9065 [yLOI2023] 云梦谣 题解
  15. GO语言-数据结构-栈
  16. vue中 div高度随另一个div的高度变化
  17. 真·富文本编辑器的演进之路-Span开胃菜
  18. 科大讯飞 前端 websocket 实时语音识别 代码_科大讯飞发布智能录音笔和智能TWS耳机,搭载核心AI转写能力...
  19. 中国黄芪注射液市场评估与投资战略报告(2022版)
  20. 【每日新闻】中国人工智能技术爆炸发展,美国开始落后?

热门文章

  1. 计算机电缆国家标准是什么,计算机电缆执行标准是什么
  2. 学习笔记(01):Linux操作系统入门培训_Linux/Unix基础培训教程视频课程-01.Linux入门培训之_软硬件平台介绍...
  3. 《请君入瓮——APT攻防指南之兵不厌诈》—第8章8.5节安全贵在未雨绸缪
  4. [QT] QT加载百度离线地图(二)
  5. ubuntu14.04 + dlib19.2+【 C++ 】+Face Landmark Detection
  6. 通过注册表永久禁用系统UAC功能
  7. 英语在线发音linux,英语单词在线发音
  8. html自动写对联,html左右对联代码
  9. 富士通750打印机驱动步骤_非网络激光打印机如何进行网络打印?
  10. Chromium OS Autotest 服务端测试