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小技巧之批量抓取美女图片
Jun 06 Python
Python中pip安装非PyPI官网第三方库的方法
Jun 02 Python
python3实现全角和半角字符转换的方法示例
Sep 21 Python
详谈Python高阶函数与函数装饰器(推荐)
Sep 30 Python
python实现Floyd算法
Jan 03 Python
Python面向对象之继承代码详解
Jan 29 Python
解决python3运行selenium下HTMLTestRunner报错的问题
Dec 27 Python
Python及Pycharm安装方法图文教程
Aug 05 Python
使用Python自动生成HTML的方法示例
Aug 06 Python
利用rest framework搭建Django API过程解析
Aug 31 Python
使用Python三角函数公式计算三角形的夹角案例
Apr 15 Python
python函数指定默认值的实例讲解
Mar 29 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
Smarty Foreach 使用说明
2010/03/23 PHP
PHP在同一域名下两个不同的项目做独立登录机制详解
2017/09/22 PHP
Laravel下生成验证码的类
2017/11/15 PHP
Yii2框架数据验证操作实例详解
2018/05/02 PHP
php判断数组是否为空的实例方法
2020/05/10 PHP
JavaScript Cookie 直接浏览网站分网址
2009/12/08 Javascript
Javascript公共脚本库系列(一): 弹出层脚本
2011/02/24 Javascript
JS Pro-深入面向对象的程序设计之继承的详解
2013/05/07 Javascript
jquery设置元素的readonly和disabled的写法
2013/09/22 Javascript
鼠标选择动态改变网页背景颜色的JS代码
2013/12/10 Javascript
Javascript的严格模式strict mode详细介绍
2014/06/06 Javascript
js实现飞入星星特效代码
2014/10/17 Javascript
javascript使用prototype完成单继承
2014/12/24 Javascript
js打造数组转json函数
2015/01/14 Javascript
js实现用户输入的小写字母自动转大写字母的方法
2017/01/21 Javascript
JS解析url查询参数的简单代码
2017/08/06 Javascript
layer.open的自适应及居中及子页面标题的修改方法
2019/09/05 Javascript
JS中比Switch...Case更优雅的多条件判断写法
2019/09/05 Javascript
JavaScript实现捕获鼠标坐标
2020/04/12 Javascript
antd design table更改某行数据的样式操作
2020/10/31 Javascript
Python实现优先级队列结构的方法详解
2016/06/02 Python
对python指数、幂数拟合curve_fit详解
2018/12/29 Python
Python3远程监控程序的实现方法
2019/07/15 Python
Python中的 sort 和 sorted的用法与区别
2019/08/10 Python
利用python画出AUC曲线的实例
2020/02/28 Python
python实现学生成绩测评系统
2020/06/22 Python
Python远程方法调用实现过程解析
2020/07/28 Python
CSS3 translate导致字体模糊的实例代码
2019/08/30 HTML / CSS
HTML5操作WebSQL数据库的实例代码
2017/08/26 HTML / CSS
阿联酋团购网站:Groupon阿联酋
2016/10/14 全球购物
销售人员获奖感言
2014/02/05 职场文书
防灾减灾活动总结
2014/08/30 职场文书
课堂打架检讨书200字
2014/11/21 职场文书
2015年小学校长工作总结
2015/05/19 职场文书
学术研讨会主持词
2015/07/04 职场文书
oracle DGMGRL ORA-16603报错的解决方法(DG Broker)
2021/04/06 Oracle