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


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