让计算机发言回复

时间:2016-01-10 13:37:14

标签: 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 = 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])

如果这是重复,我道歉。我更需要在这个结构中拟合解决方案,只是为了帮助我了解它的放置位置以及如何使用它。

注意: 这不是标记问题的愚蠢行为。虽然这个被认为是重复的问题确实允许你将文本转换为语音,但它并不涉及将列出的随机响应转换为语音,这是我需要做的。但它确实允许我让演讲工作,所以谢谢你。我在其他地方找到了答案并将其放在下面。

1 个答案:

答案 0 :(得分:0)

由于我在这里没有得到任何回应以帮助解决问题,所以我去了其他地方并找到了这个具体问题的答案。尽管这个被认为是重复的问题确实允许Python发言,但它没有将语音设置为列表中的响应。但它确实允许我让演讲工作,所以谢谢你。

我只是将此代码添加到每个' print(列表[选项])'包括' print(选项[选项])'它声明了函数。

所需的代码:os.system("说" +"'" + list [choice] +"'"'&#34 ;)

然后,这将允许它说出随机选择的响应。但是,出于某种原因,它似乎并不像撇号,所以请确保列表中的所有响应都没有!逗号,点,问号等似乎没问题,但是撇号是不行的!

这对我有用,不确定它是否适用于其他代码迭代,但我希望它可以。但/ / p>