使用ansible中的列表值反转字典

使用ansible中的列表值反转字典,ansible,ansible-2.x,ansible-facts,Ansible,Ansible 2.x,Ansible Facts,我如何转换下面这样的词典 { "host1": ["tag1", "tag2"], "host2": ["tag1"] } 以ansible形式发送至以下地址: { "tag1": ["host1","host2"], "tag2": ["host1"] } 我一直在尝试这样做,但由于该值是一个列表,所以被卡住了 剧本 shell>cat playbook.yml -主机:本地主机 变量: 格言1: host1:[“tag1”、“tag2”] host2:[“tag1”] 任务: -设定事实

我如何转换下面这样的词典

{
"host1": ["tag1", "tag2"],
"host2": ["tag1"]
}
以ansible形式发送至以下地址:

{
"tag1": ["host1","host2"],
"tag2": ["host1"]
}
我一直在尝试这样做,但由于该值是一个列表,所以被卡住了

剧本

shell>cat playbook.yml
-主机:本地主机
变量:
格言1:
host1:[“tag1”、“tag2”]
host2:[“tag1”]
任务:
-设定事实:
dict2:“{{dict2}默认值({})|
合并({item:list_of_hosts}}}”
循环:{{dict1.values()|展平|唯一|列表}}”
变量:
主机列表:“{{1”|
口述2项|
selectattr('值','包含',项)|
映射(属性='key')|
列表}”
-调试:
变量:dict2
给予

“dict2”:{
“tag1”:[
“host1”,
“host2”
],
“tag2”:[
“host1”
]
}