ansible.builtin.dict 查找 – 从字典返回键值对项

注意

此查找插件是 ansible-core 的一部分,包含在所有 Ansible 安装中。在大多数情况下,您可以使用简短的插件名称 dict。但是,我们建议您使用 完全限定的集合名称 (FQCN) ansible.builtin.dict 以便轻松链接到插件文档并避免与可能具有相同查找插件名称的其他集合冲突。

概要

  • 将字典作为输入,并返回一个列表,列表中的每个项目都是一个字典,其中 'key' 和 'value' 作为先前字典结构的键。

条款

参数

评论

条款

字符串 / 必需

字典列表

示例

vars:
  users:
    alice:
      name: Alice Appleworth
      telephone: 123-456-7890
    bob:
      name: Bob Bananarama
      telephone: 987-654-3210
tasks:
  # with predefined vars
  - name: Print phone records
    ansible.builtin.debug:
      msg: "User {{ item.key }} is {{ item.value.name }} ({{ item.value.telephone }})"
    loop: "{{ lookup('ansible.builtin.dict', users) }}"
  # with inline dictionary
  - name: show dictionary
    ansible.builtin.debug:
      msg: "{{item.key}}: {{item.value}}"
    with_dict: {a: 1, b: 2, c: 3}
  # Items from loop can be used in when: statements
  - name: set_fact when alice in key
    ansible.builtin.set_fact:
      alice_exists: true
    loop: "{{ lookup('ansible.builtin.dict', users) }}"
    when: "'alice' in item.key"

返回值

描述

返回值

列表 / 元素=字符串

包含键和值的组合字典列表

返回:成功

提示

每个条目类型的配置条目具有从低到高的优先级顺序。例如,列表中较低的变量将覆盖列表中较高的变量。