Python入门到实践-问答机器人

释放双眼,带上耳机,听听看~!

基础知识学了其实也有一段时间了,做几个小的实例还是绰绰有余的。今天我们就一起实操,写一个问答机器人吧

问题来了,要做一个问答机器人我们首先得知道会用到哪些学到的知识点:

  • 字典:存储机器人的相关对话内容,让机器人有相关的“记忆”
  • 循环(嵌套循环):一直去响应我们对应的问题
  • 判断: 执行流程操作

搞清楚了机器人的相关运作流程之后就开搞吧,流程是比较复杂的,不过相信你能搞定。上栗子:

#/usr/bin/env python3
#coding:utf-8

dict = {
    "你好" : "你好",
    "很高兴见到您" : "我也很能高兴见到你",
    "你喜欢吃什么水果 " : "我喜欢橘子",
    "你今年多大了" : "27 岁了",
    "你很漂亮" : "谢谢"   
}

flag = ('c')
work = True

print('你好,我是python机器人')
print('你有时间跟我聊聊吗')
while flag == 'c' or 't':
    flag = input("你可以选择是否跟我聊天(c),还是决定练习下我的对话能力(t),或者让我推下(l)?(c/t/l)")
    if flag == "t":
        question = input("请输入你想问的:")
        answer = input("请输入问题答案:")
        dict[str(question)] = str(answer)
        print("学习成功")
        print("现在我已经学会了%d个问题"%len(dict))
        continue
    elif flag == 'c':
        if len(dict) == 0:
            print("现在我还不会回答任何问题,请先让我学习:")
            continue
        chat_word = input("谢谢你跟我聊天,你想对我说点什么?:")

        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,这个问题我回答不上来")
            work = True
    elif flag == 'l':
        print("好的,那我们下次再聊")
        break
    else:
        print("请输入提示指令")
        continue

这是讲字典,循环,判断结核的比较好的一个实例;为了方便你以后能灵活使用相关技术,希望能够多思考将这些知识点组合运用起来转化称自己的思路,不断的练习方能起到学以致用。我们的Python初级课程差不多也就到这了,接下来将会进入到中级课程当中

【转自慕课】https://www.imooc.com

Python

入行18年程序员疯狂吐槽:捷径?不存在

2022-3-3 7:40:19

Python

python强势来袭-0017-pass带来的便利

2022-3-3 7:42:32

搜索