濮阳杆衣贸易有限公司

主頁 > 知識庫 > Python實戰(zhàn)整活之聊天機(jī)器人

Python實戰(zhàn)整活之聊天機(jī)器人

熱門標(biāo)簽:地圖標(biāo)注微信發(fā)送位置不顯示 315電話機(jī)器人廣告 上海機(jī)器人外呼系統(tǒng)哪家好 房產(chǎn)電銷外呼系統(tǒng) 地圖標(biāo)注的意義點 浙江電銷卡外呼系統(tǒng)好用嗎 南京銷售外呼系統(tǒng)軟件 地圖制圖標(biāo)注位置改變是移位嗎 蓋州市地圖標(biāo)注

一、前言

剛剛學(xué)了一些python文件讀寫的內(nèi)容,先跑過來整活了。順便復(fù)習(xí)一下之前學(xué)的東西。

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('退出運(yùn)行')
                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)

效果呢,就是你在這個位置的記事本里寫東西然后保存,它會回復(fù)你消息,如果你說的話在規(guī)定的字典中,它就會回你預(yù)設(shè)好的話。如果沒有預(yù)設(shè),就會重復(fù)你的話(復(fù)讀機(jī))。

我把每次輸入與返回都進(jìn)行了輸出

二、效果演示

你甚至可以跟它接crepper,如果你足夠閑,也可以整個成語接龍。

三、完整代碼

三個函數(shù)分別定義讀取內(nèi)容、寫入內(nèi)容、與定時

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是預(yù)設(shè)回答的字典。

先寫入內(nèi)容,清空之前的文字,提示程序開始。讀取文件內(nèi)容,就是'test begin'

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

然后是一個死循環(huán),直到你輸入了q,才會退出。

每隔1秒讀取一次文件中的內(nèi)容,如果文件內(nèi)容沒變視為沒輸入,文件內(nèi)容變化則對字典進(jìn)行檢索,返回None證明無對應(yīng)答案,則復(fù)讀。如果返回了值則輸出該值。

while True:
    dTime(1.0000000)
    mes = iRead()
    if mes!=message0:
        v=answer.get(mes)
        if v==None:
            if mes=='q' :
                print('退出運(yùn)行')
                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)

到此這篇關(guān)于Python實戰(zhàn)整活之聊天機(jī)器人的文章就介紹到這了,更多相關(guān)python聊天機(jī)器人內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python如何實現(xiàn)機(jī)器人聊天
  • vue.js實現(xiàn)h5機(jī)器人聊天(測試版)
  • python操作微信自動發(fā)消息的實現(xiàn)(微信聊天機(jī)器人)
  • Python使用20行代碼實現(xiàn)微信聊天機(jī)器人
  • jquery實現(xiàn)聊天機(jī)器人
  • 基于python的itchat庫實現(xiàn)微信聊天機(jī)器人(推薦)
  • nodejs實現(xiàn)聊天機(jī)器人功能
  • Python QQBot庫的QQ聊天機(jī)器人
  • 使用python接入微信聊天機(jī)器人
  • python微信聊天機(jī)器人改進(jìn)版(定時或觸發(fā)抓取天氣預(yù)報、勵志語錄等,向好友推送)
  • Django實現(xiàn)聊天機(jī)器人

標(biāo)簽:臨汾 貴州 赤峰 克拉瑪依 日照 雙鴨山 金華 陽泉

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Python實戰(zhàn)整活之聊天機(jī)器人》,本文關(guān)鍵詞  Python,實戰(zhàn),整活,之,聊天,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Python實戰(zhàn)整活之聊天機(jī)器人》相關(guān)的同類信息!
  • 本頁收集關(guān)于Python實戰(zhàn)整活之聊天機(jī)器人的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    万山特区| 九龙县| 芜湖市| 定南县| 库伦旗| 南丰县| 康平县| 莎车县| 金湖县| 昌宁县| 海宁市| 蕲春县| 浮山县| 宣城市| 龙里县| 香格里拉县| 榆社县| 监利县| 曲靖市| 房山区| 阿鲁科尔沁旗| 西林县| 广元市| 兴文县| 安化县| 永善县| 临沂市| 东丰县| 辽源市| 福贡县| 衡水市| 平顶山市| 抚顺县| 马尔康县| 清镇市| 徐州市| 广水市| 蓬溪县| 黄龙县| 麦盖提县| 阿拉善右旗|