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

 更新时间:2018年04月09日 10:39:05   作者:chengqiuming  
这篇文章主要介绍了Python基于TCP实现会聊天的小机器人功能,结合实例形式分析了Python通过socket模块实现TCP连接的客户端与服务器端模拟聊天机器人功能相关操作技巧,需要的朋友可以参考下
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

本文实例讲述了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相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

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

相关文章

  • python3中的eval和exec的区别与联系

    python3中的eval和exec的区别与联系

    这篇文章主要介绍了python3中的eval和exec的区别与联系,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • python使用SQLAlchemy操作MySQL

    python使用SQLAlchemy操作MySQL

    这篇文章主要介绍了python使用SQLAlchemy操作MySQL,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • pytorch-autograde-计算图的特点说明

    pytorch-autograde-计算图的特点说明

    这篇文章主要介绍了pytorch-autograde-计算图的特点,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • 对Python2与Python3中__bool__方法的差异详解

    对Python2与Python3中__bool__方法的差异详解

    今天小编就为大家分享一篇对Python2与Python3中__bool__方法的差异详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • python抓取网页内容并进行语音播报的方法

    python抓取网页内容并进行语音播报的方法

    今天小编就为大家分享一篇python抓取网页内容并进行语音播报的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • python基于三阶贝塞尔曲线的数据平滑算法

    python基于三阶贝塞尔曲线的数据平滑算法

    这篇文章主要介绍了python基于三阶贝塞尔曲线的数据平滑算法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • YOLOv5车牌识别实战教程(三)模型训练与评估

    YOLOv5车牌识别实战教程(三)模型训练与评估

    这篇文章主要介绍了YOLOv5车牌识别实战教程(三)模型训练与评估,在这个教程中,我们将一步步教你如何使用YOLOv5进行车牌识别,帮助你快速掌握YOLOv5车牌识别技能,需要的朋友可以参考下
    2023-04-04
  • Pytorch之Tensor和Numpy之间的转换的实现方法

    Pytorch之Tensor和Numpy之间的转换的实现方法

    这篇文章主要介绍了Pytorch之Tensor和Numpy之间的转换的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • Python中join和split用法实例

    Python中join和split用法实例

    这篇文章主要介绍了Python中join和split用法实例,本文直接给出使用实例,需要的朋友可以参考下
    2015-04-04
  • 关于Python正则表达式模块之re模块

    关于Python正则表达式模块之re模块

    这篇文章主要介绍了关于Python正则表达式模块之re模块,?re模块是Python中的重要组成部分,这里涉及到字符串的匹配,转换,自定义格式化等,需要的朋友可以参考下
    2023-04-04

最新评论

?


http://www.vxiaotou.com