我有三份清单:
servers = ['DC1','DC2','DC3']
main_process = ['1.exe','2.exe','3.exe']
sub_process = ['s1','s2','s3']
我在json中有一个API请求,我需要打印到一个文件中的次数与列表中的元素数量一样多--在本例中是3次--但每个列表中的元素位于相同的位置。
例如:
POST api/alerting/rule
{
"params":{
"aggType":"avg",
"termSize":6,
"thresholdComparator":">",
"timeWindowSize":5,
"timeWindowUnit":"m",
"groupBy":"top",
"threshold":[
1000
],
"index":[
".test-index"
],
"timeField":"@timestamp",
"aggField":"sheet.version",
"SERVER":"DC1" # <--------- This Parameter
"MAIN_PROCESS":"1.exe" # <--------- This Parameter
"SUB_PROCESS":"s1" # <--------- This Parameter
},
"consumer":"alerts",
"rule_type_id":".index-threshold",
"schedule":{
"interval":"1m" }
"notify_when":"onActionGroupChange",
"name":"my alert"
}
POST api/alerting/rule
{
"params":{
"aggType":"avg",
"termSize":6,
"thresholdComparator":">",
"timeWindowSize":5,
"timeWindowUnit":"m",
"groupBy":"top",
"threshold":[
1000
],
"index":[
".test-index"
],
"timeField":"@timestamp",
"aggField":"sheet.version",
"SERVER":"DC2" # <--------- This Parameter
"MAIN_PROCESS":"2.exe" # <--------- This Parameter
"SUB_PROCESS":"s2" # <--------- This Parameter
},
"consumer":"alerts",
"rule_type_id":".index-threshold",
"schedule":{
"interval":"1m" }
"notify_when":"onActionGroupChange",
"name":"my alert"
}
POST api/alerting/rule
{
"params":{
"aggType":"avg",
"termSize":6,
"thresholdComparator":">",
"timeWindowSize":5,
"timeWindowUnit":"m",
"groupBy":"top",
"threshold":[
1000
],
"index":[
".test-index"
],
"timeField":"@timestamp",
"aggField":"sheet.version",
"SERVER":"DC3" # <--------- This Parameter
"MAIN_PROCESS":"3.exe" # <--------- This Parameter
"SUB_PROCESS":"s3" # <--------- This Parameter
},
"consumer":"alerts",
"rule_type_id":".index-threshold",
"schedule":{
"interval":"1m" }
"notify_when":"onActionGroupChange",
"name":"my alert"
}
我知道我需要一些循环,但我还不能解决这个问题。我更喜欢在bash中这样做,因为我在这里工作的环境也是一个很好的解决方案。
谢谢。
2条答案
按热度按时间klr1opcd1#
您可以执行一个for循环,然后在所有三个列表中使用相同的索引访问值。
如果您不想验证列表的长度,也可以循环到最小长度:
ccrfmcuu2#
将这3个列表合并成一个词典列表可能会更容易,如果这些列表都有相同的长度:
结果:
然后,您可以像这样在元素上循环:
不推荐使用,但您也可以使用索引同步循环这3个列表:
结果:
但使用字典键可以使代码更加明确。