python自娱自乐的聊天机器人

python自娱自乐的聊天机器人,第1张

python自娱自乐的聊天机器人

那么Hello大家好,我是千年泪,年龄嘛...(12)咳咳,不重要不重要

2021年11月5日这天,我刷抖音时偶然刷到一个python导师***的视频

用3行python代码做聊天机器人,代码如下

while True:
    问话 = input("真人:");
    print("假机器人"+问话.strip("吗??")+"!");

大致看了一下,就是定义了"问话"这个变量然后print打印出我们输入的原话

再使用strip方法删除我们结尾的"吗??"(也只属于我的猜测,还不咋熟)

我寻思这不自娱自乐呢吗.....

你看我像是那种自娱自乐的人吗?

嗯.....我是!(嘿嘿)

我思考了一下,自动聊天机器人是会检测用户发送的关键字然后输出对应的答复

于是呢我就开始了我的猜想

第一次编写时是这样的

dictionary = {'你好':'你好'}
while True:
    user_input = input()
    if str(user_input) in dictionary:
        print(dictionary.keys())

诶...好像...Error了

好吧应该是错了

运行之后把我的key值打印出来了???

最后左思右想,我输入key值"你好"

而它又打印出来我的key值,

到这里也发现事情发展逐渐走偏

那么肯定是方法不对

查阅了一下资料,有个叫get的方法

格式是:"dictionary.get()"

get()后面的括号的参数应该就是我要检索的

第二个参数则是不存在返回的参数

于是修改了一下, 重新定义了一个变量储存着结果

dictionary = {'你好':'你好'}
while True:
    user_input = input()
    me_print = dictionary.get(user_input, "关键字:=="+user_input+"==不存在字典")
    print(me_print)

大致解读一下:

我定义了一个字典(dictionary)然后死循环,user_input中储存input的变量(str!)

而me_print则调用了字典中的get()方法,传入了2个参数,1是input的变量,传入get()来检索

dictionary里是否存在于input的结果一致的key值

有 则返回对应的valuse值 无则返回传入的第二个参数

print(me_print)则是答应出返回的内容

运行后:

输入:你好

回复:你好

输入:在吗

回复:关键字:==在吗==不存在字典

那么,至此=。这个自娱自乐的聊天机器人就算圆满完成!

仅作为一个联系,刚学python就是看看能力(笑哭)我估计我也只会这一个

好了,最终我写到最后的源码给大家显示一下:

# 输入的字典(接收用户输入的结果输出对应的values)
dictionary = {"你好":"你好"
    , "在吗" or "在?" or "在?" or "在吗?":"我在"}

while True:
    user_input = input("USER:")
    me_print = dictionary.get(user_input
                , '关键词=="'+str(user_input)+'"==不在我的字典里')
    print(me_print)

自典就是关键字的内容可自行添加key : valuse值

那么这篇文章就到这里

各位, 再见!希望这篇文章对你们有帮助!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5157768.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-18
下一篇 2022-11-18

发表评论

登录后才能评论

评论列表(0条)

保存