主页 > 知识库 > Python实战整活之聊天机器人

Python实战整活之聊天机器人

热门标签:地图标注微信发送位置不显示 315电话机器人广告 上海机器人外呼系统哪家好 房产电销外呼系统 地图标注的意义点 浙江电销卡外呼系统好用吗 南京销售外呼系统软件 地图制图标注位置改变是移位吗 盖州市地图标注

一、前言

刚刚学了一些python文件读写的内容,先跑过来整活了。顺便复习一下之前学的东西。

import time

doc_local='D:\learning_folder\interaction.txt'

def iRead():
    fr = open(doc_local, 'r')
    message=fr.read()
    return message
def iWrite(message):
    fw = open(doc_local, 'w')
    fw.write(message)
    fw.close()
def dTime(num):
    a=time.time()
    b=time.time()
    while (b-a)num:
        b=time.time()
    return None
answer={'i am temmie':'you are temmie? who am i?','temmie':'temmie!!!','wang!':'wangwangwang!!!'}
iWrite('test begin')
message0 = iRead()
print(message0)
while True:
    dTime(1.0000000)
    mes = iRead()
    if mes!=message0:
        v=answer.get(mes)
        if v==None:
            if mes=='q' :
                print('退出运行')
                break
            else:
                print('message:', mes, end='\t')
                a_out=('temmie say again:{0}'.format(mes))
                message0 = a_out
                iWrite(a_out)
                print(a_out)
        else:
            print('message:', mes, end='\t')
            b_out=('{0}'.format(answer.get(mes)))
            message0 =b_out
            iWrite(b_out)
            print('answer:',b_out)

效果呢,就是你在这个位置的记事本里写东西然后保存,它会回复你消息,如果你说的话在规定的字典中,它就会回你预设好的话。如果没有预设,就会重复你的话(复读机)。

我把每次输入与返回都进行了输出

二、效果演示

你甚至可以跟它接crepper,如果你足够闲,也可以整个成语接龙。

三、完整代码

三个函数分别定义读取内容、写入内容、与定时

def iRead():
    fr = open(doc_local, 'r')
    message=fr.read()
    return message
def iWrite(message):
    fw = open(doc_local, 'w')
    fw.write(message)
    fw.close()
def dTime(num):
    a=time.time()
    b=time.time()
    while (b-a)num:
        b=time.time()
    return None

answer是预设回答的字典。

先写入内容,清空之前的文字,提示程序开始。读取文件内容,就是'test begin'

iWrite('test begin')
message0 = iRead()

然后是一个死循环,直到你输入了q,才会退出。

每隔1秒读取一次文件中的内容,如果文件内容没变视为没输入,文件内容变化则对字典进行检索,返回None证明无对应答案,则复读。如果返回了值则输出该值。

while True:
    dTime(1.0000000)
    mes = iRead()
    if mes!=message0:
        v=answer.get(mes)
        if v==None:
            if mes=='q' :
                print('退出运行')
                break
            else:
                print('message:', mes, end='\t')
                a_out=('temmie say again:{0}'.format(mes))
                message0 = a_out
                iWrite(a_out)
                print(a_out)
        else:
            print('message:', mes, end='\t')
            b_out=('{0}'.format(answer.get(mes)))
            message0 =b_out
            iWrite(b_out)
            print('answer:',b_out)

到此这篇关于Python实战整活之聊天机器人的文章就介绍到这了,更多相关python聊天机器人内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
  • Python如何实现机器人聊天
  • vue.js实现h5机器人聊天(测试版)
  • python操作微信自动发消息的实现(微信聊天机器人)
  • Python使用20行代码实现微信聊天机器人
  • jquery实现聊天机器人
  • 基于python的itchat库实现微信聊天机器人(推荐)
  • nodejs实现聊天机器人功能
  • Python QQBot库的QQ聊天机器人
  • 使用python接入微信聊天机器人
  • python微信聊天机器人改进版(定时或触发抓取天气预报、励志语录等,向好友推送)
  • Django实现聊天机器人

标签:临汾 贵州 赤峰 克拉玛依 日照 双鸭山 金华 阳泉

巨人网络通讯声明:本文标题《Python实战整活之聊天机器人》,本文关键词  Python,实战,整活,之,聊天,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《Python实战整活之聊天机器人》相关的同类信息!
  • 本页收集关于Python实战整活之聊天机器人的相关信息资讯供网民参考!
  • 推荐文章