Artificial intelligence 让计算机说出响应

Artificial intelligence 让计算机说出响应,artificial-intelligence,text-to-speech,chatbot,Artificial Intelligence,Text To Speech,Chatbot,刚开始学习编程,开始涉足简单的聊天机器人代码。我有文本响应,但是我希望我的计算机(Mac)在显示响应的同时只显示响应。代码如下: import random import sys import os def show_response(options): choice = random.randint(0, len(options) -1) print(options[choice]) random.seed(None) while True: userInput = i

刚开始学习编程,开始涉足简单的聊天机器人代码。我有文本响应,但是我希望我的计算机(Mac)在显示响应的同时只显示响应。代码如下:

import random 

import sys

import os

def show_response(options):

choice = random.randint(0, len(options) -1)

print(options[choice])

random.seed(None)

while True:
    userInput = input(">>>")

    if userInput in ["Ava, you there?"]:
        list = ["Indeed I am, Sir.", "Yes, Sir. What do you need?", "For you, Sir, always.", "I am now.", "What is it, Sir?", "I'm right here.", "How may I assist you, Sir?", "How may I assist you?", "You need something, Sir?"]
        choice = random.randint(0, len(list) -1)
        print(list[choice])
    elif userInput in ["Wake up, Ava"]:
        list = ["What is it, Sir?", "How can I help?", "How can I help, Sir?", "Hello, Sir.", "Hello, Sir. Is there anything you need?", "How may I assist you?", "How may I assist you, Sir?"]
        choice = random.randint(0, len(list) -1)
        print(list[choice])
    elif userInput in ["Hey, Ava"]:
        list = ["What is it, Sir?", "How can I help?", "How can I help, Sir?", "Hello, Sir.", "Hello, Sir. Need anything?", "How may I assist you?", "How may I assist you, Sir?", "You need something, Sir?"]
        choice = random.randint(0, len(list) -1)
        print(list[choice])
如果这是重复,我道歉。我更需要在这个结构中安装解决方案,只是为了帮助我了解它的位置以及如何使用它

注:
这不是一个有标记的问题的骗局。虽然这个被认为是复制的问题确实允许你将文本转换成语音,但它不涉及将列出的随机响应转换成语音,这正是我需要做的。不过,这确实让我的演讲发挥了作用,谢谢。我在其他地方找到了答案,并将其放在下面。

因为我在这里没有得到帮助解决问题的答案,所以我去了其他地方,找到了这个特定问题的答案。虽然这个被认为是复制的问题确实允许Python说话,但它没有将讲话设置为列表中的回答。不过,这确实让我的演讲发挥了作用,谢谢

我只是在每个“print(list[choice])下面添加了这段代码,包括它声明函数的“print(options[choice])”

所需的代码:os.system(“say“+”+list[choice]+”)

这将允许它说出随机选择的回答。然而,由于某些原因,它似乎不喜欢撇号,所以请确保列表中的所有响应都没有撇号!逗号、点、问号等看起来不错,但撇号是不行的


这对我来说很有效,不确定它是否适用于其他代码迭代,但我希望如此。

要格式化代码,请选择块并按下工具栏中类似大括号的按钮。它工作得很好。您不需要在每一行代码之间都有额外的空行。
我更需要在这个结构中安装解决方案。
是一种说“为我做吧”的奇特方式。听起来你找到了你需要的东西,但不想花时间好好学习并使用它。可能是@takendark的重复。不,这很可能会被设置为一个被欺骗的问题。问题是,已经有答案的问题可能会被用于不同的结构,一个我不理解的结构。我需要知道如何将特定的代码放在这个特定的结构中,以便我理解它。那么,您是否尝试将其他代码放在您的结构中?如果你做了,你就没有给我们看。如果你没有,那应该是第一步。