ansible.builtin.indexed_items – rewrites lists to return ‘indexed items’


This lookup plugin is part of ansible-core and included in all Ansible installations. In most cases, you can use the short plugin name indexed_items even without specifying the collections: keyword. However, we recommend you use the FQCN for easy linking to the plugin documentation and to avoid conflicting with other collections that may have the same lookup plugin name.

New in version 1.3: of ansible.builtin


  • use this lookup if you want to loop over an array and also get the numeric index of where you are in the array as you go

  • any list given will be transformed with each resulting element having the it’s previous position in item.0 and its value in item.1


Parameter Choices/Defaults Configuration Comments
string / required
list of items


- name: indexed loop demo
    msg: "at array position {{ item.0 }} there is a value {{ item.1 }}"
    - "{{ some_list }}"

Return Values

Common return values are documented here, the following are the fields unique to this lookup:

Key Returned Description
list / elements=list
list with each item.0 giving you the position and item.1 the value


  • Michael DeHaan