我似乎遇到了循环浏览我从Alexa技能中的URL中提取的数据的问题,这是我的示例代码:
def get_elevator_status():
session_attributes = {}
card_title = "Septa Elevator Status"
reprompt_text = ""
should_end_session = False
response = urllib2.urlopen(API_BASE_URL + "/elevator")
septa_elevator_status = json.load(response)
for elevators in septa_elevator_status['results']:
speech_output = "The following elevators are out of service." "On " + elevators['line'] + " at station " + elevators['station'] + " the " + elevators['elevator'] + " elevator has " + elevators['message']
如果我在python shell中运行代码并打印出结果(如果有多次中断),则打印出所有行。但是,当我测试我的Alexa技能并要求停电时,即使有多次电梯停电,它也只报告一个结果。我错过了一些工作吗?这段代码应该循环通过并说明找到的所有结果吗?
你可以发布'响应'json,我的猜测是json没有正确形成
每当你用特定的speech_output
覆盖elevators
时,循环遍历结果集。相反,你必须将每个结果连接到speech_output
。
for elevators in septa_elevator_status['results']:
speech_output = speech_output + " <s> The following elevators are out of service." "On " + elevators['line'] + " at station " + elevators['station'] + " the " + elevators['elevator'] + " elevator has " + elevators['message'] + "</s>"
<s>
是句子标记,只有在使用SSML时才使用它。