高级快捷指令(十一):使用网络API——使用JSON——处理列表

捷径技巧 2020-08-12 12:02

在“快捷指令”中使用“为每个项目重复”操作处理列表

本节讨论使用“为每个项目重复”操作从 Dark Sky API(在上一个主题中介绍)返回的数据中取回预报中每天的平均温度。“为每个项目重复”操作允许快捷指令对列表中的每一项逐个进行操作。

若要处理八天的一系列数据,您必须将输出传入“为每个项目重复”操作中,然后设置每个循环中的操作以每次取回一天的数据。

若要获取每天最高温度和最低温度的平均数,请使用带有两个“重复项目”变量的“列表”操作来创建重复循环。轻点第一个“重复项目”变量,将内容类型更改为“词典”,然后输入键 temperatureMax 以获取每天的最高温度。为第二个“重复项目”变量执行相同的操作,提供键 temperatureMin 以获取每天的最低温度。

接下来,使用“计算统计数据”操作求两个新值的平均数,然后使用“为数字取整”操作将这天的平均温度值变为简洁可读的版本。

快捷指令编辑器中的“计算统计数据”操作和“为数字取整”操作。

若要确保重复循环传出的原始数据值是有用的,请提取数据属于星期几,用于显示在提醒中。您可以使用另一个设为键 time 的“重复项目”变量从 API 中提取时间值,然后使用“调整日期”操作从时间值中计算出正确的日期。将储存星期几的变量(从“调整日期”中提取)和平均温度(从“为数字取整”中提取)放入“文本”操作中,这样每个循环的最终输出都是一行文本,其中带有重新格式化后的数据。

快捷指令编辑器中应用了变量的“日期”操作、“调整日期”操作和“文本”操作。

快捷指令运行到“为每个项目重复”操作时,它会在每天的数据词典间循环,执行计算,然后将结果传入“结束重复”标记。全部的八次重复结束后,所有数字会编组在一起并传出“结束重复”标记,用于传入另一个操作或变为可取回的“重复结果”变量。

继续前往下一节来了解如何将自定天气数据显示为提醒

某些 App、服务和内容仅在部分国家或地区可用。