基礎(chǔ)知識(shí)學(xué)了其實(shí)也有一段時(shí)間了,做幾個(gè)小的實(shí)例還是綽綽有余的。今天我們就一起實(shí)操,寫(xiě)一個(gè)問(wèn)答機(jī)器人吧
問(wèn)題來(lái)了,要做一個(gè)問(wèn)答機(jī)器人我們首先得知道會(huì)用到哪些學(xué)到的知識(shí)點(diǎn):
搞清楚了機(jī)器人的相關(guān)運(yùn)作流程之后就開(kāi)搞吧,流程是比較復(fù)雜的,不過(guò)相信你能搞定。上栗子:
#/usr/bin/env python3
#coding:utf-8
dict = {
"你好" : "你好",
"很高興見(jiàn)到您" : "我也很能高興見(jiàn)到你",
"你喜歡吃什么水果 " : "我喜歡橘子",
"你今年多大了" : "27 歲了",
"你很漂亮" : "謝謝"
}
flag = ('c')
work = True
print('你好,我是python機(jī)器人')
print('你有時(shí)間跟我聊聊嗎')
while flag == 'c' or 't':
flag = input("你可以選擇是否跟我聊天(c),還是決定練習(xí)下我的對(duì)話能力(t),或者讓我推下(l)?(c/t/l)")
if flag == "t":
question = input("請(qǐng)輸入你想問(wèn)的:")
answer = input("請(qǐng)輸入問(wèn)題答案:")
dict[str(question)] = str(answer)
print("學(xué)習(xí)成功")
print("現(xiàn)在我已經(jīng)學(xué)會(huì)了%d個(gè)問(wèn)題"%len(dict))
continue
elif flag == 'c':
if len(dict) == 0:
print("現(xiàn)在我還不會(huì)回答任何問(wèn)題,請(qǐng)先讓我學(xué)習(xí):")
continue
chat_word = input("謝謝你跟我聊天,你想對(duì)我說(shuō)點(diǎn)什么?:")
for key in sorted(dict.keys()):
if str(chat_word) == key:
work = True
print(dict[key])
break
else:
work = False
if work == False:
print("Sorry,這個(gè)問(wèn)題我回答不上來(lái)")
work = True
elif flag == 'l':
print("好的,那我們下次再聊")
break
else:
print("請(qǐng)輸入提示指令")
continue
這是講字典,循環(huán),判斷結(jié)核的比較好的一個(gè)實(shí)例;為了方便你以后能靈活使用相關(guān)技術(shù),希望能夠多思考將這些知識(shí)點(diǎn)組合運(yùn)用起來(lái)轉(zhuǎn)化稱自己的思路,不斷的練習(xí)方能起到學(xué)以致用。我們的 Python 初級(jí)課程差不多也就到這了,接下來(lái)將會(huì)進(jìn)入到中級(jí)課程當(dāng)中
更多建議: