剛剛學(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)
效果呢,就是你在這個(gè)位置的記事本里寫東西然后保存,它會(huì)回復(fù)你消息,如果你說的話在規(guī)定的字典中,它就會(huì)回你預(yù)設(shè)好的話。如果沒有預(yù)設(shè),就會(huì)重復(fù)你的話(復(fù)讀機(jī))。
我把每次輸入與返回都進(jìn)行了輸出
你甚至可以跟它接crepper,如果你足夠閑,也可以整個(gè)成語接龍。
三個(gè)函數(shù)分別定義讀取內(nèi)容、寫入內(nèi)容、與定時(shí)
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()
然后是一個(gè)死循環(huán),直到你輸入了q,才會(huì)退出。
每隔1秒讀取一次文件中的內(nèi)容,如果文件內(nèi)容沒變視為沒輸入,文件內(nèi)容變化則對(duì)字典進(jìn)行檢索,返回None證明無對(duì)應(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實(shí)戰(zhàn)整活之聊天機(jī)器人的文章就介紹到這了,更多相關(guān)python聊天機(jī)器人內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
標(biāo)簽:臨汾 貴州 赤峰 克拉瑪依 日照 雙鴨山 金華 陽泉
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Python實(shí)戰(zhàn)整活之聊天機(jī)器人》,本文關(guān)鍵詞 Python,實(shí)戰(zhàn),整活,之,聊天,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。