Eseguire loop sui dizionari
Crei utenti da dati chiave-valore
Eseguire loop sui dizionari è una lezione DevOps Bootcamp gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento DevOps Bootcamp, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso DevOps Bootcamp include 4 lezioni in totale.
Gli elenchi non bastano
La creazione di utenti richiede più di un nome: un gruppo, una shell e uno stato. Un elenco semplice non può contenere tutto questo. Serve un elenco di dizionari. 🗂️
Un elenco di dizionari
Ogni voce dell'elenco diventa un piccolo dizionario di coppie chiave-valore. Ogni iterazione del loop dispone così di diversi campi denominati con cui lavorare.
loop:
- { name: alice, group: admin }
- { name: bob, group: dev }Accedere alle chiavi con item.key
Quando item è un dizionario, legga ogni campo con item.fieldname. In questo modo item.name e item.group recuperano i valori dalla voce corrente.
- name: Add users
ansible.builtin.user:
name: "{{ item.name }}"
group: "{{ item.group }}"
loop:
- { name: alice, group: admin }
- { name: bob, group: dev }Formato multilinea più chiaro
Le parentesi graffe inline possono diventare troppo fitte. Scriva ogni dizionario su più righe per migliorare la leggibilità quando le voci contengono molte chiavi.
loop:
- name: alice
group: admin
shell: /bin/bash
- name: bob
group: dev
shell: /bin/zshRecuperare l'elenco dalle variabili
Definisca l'elenco di dizionari come una variabile, quindi esegua il loop su di esso. I dati restano in un unico punto, mentre il task rimane breve e riutilizzabile.
vars:
users:
- { name: alice, group: admin }
tasks:
- ansible.builtin.user:
name: "{{ item.name }}"
loop: "{{ users }}"Eseguire il loop su un dizionario reale
Per iterare su un dict reale di coppie chiave-valore, lo passi attraverso il filtro dict2items, così ogni coppia diventa un elemento su cui eseguire il loop.
loop: "{{ ports | dict2items }}"item.key e item.value
Dopo dict2items, ogni item espone item.key e item.value, ovvero il nome e i dati della mappatura originale.
- ansible.builtin.debug:
msg: "{{ item.key }} = {{ item.value }}"
loop: "{{ settings | dict2items }}"Chiavi facoltative e variabili
Non tutte le voci devono contenere ogni chiave. Combini un loop con il filtro default, così i campi mancanti ricevono un valore predefinito sensato.
shell: "{{ item.shell | default('/bin/sh') }}"I dizionari mantengono i dati ordinati
Raggruppare i campi correlati per elemento mantiene dati e logica separati. Per modificare un utente basta modificare i dati, senza toccare il task.
Ancora completamente idempotente
Ogni iterazione del dizionario è una chiamata separata al modulo, quindi Ansible restituisce changed o ok per ogni utente, proprio come con gli elenchi semplici.
Ideale per configurazioni in blocco
Utenti, host virtuali e regole firewall: qualsiasi elemento con diversi attributi si adatta perfettamente a un elenco di dizionari.
Controllo rapido
Sta eseguendo il loop su un elenco di dizionari. Come legge un campo?
Riepilogo: loop sui dizionari
Ha eseguito il loop su elenchi di dizionari, letto i campi item.name e usato dict2items per le mappe reali. Prossimo argomento: i loop annidati. 🎉
Domande Frequenti
La lezione «Eseguire loop sui dizionari» è gratuita?
Sì — il testo completo di «Eseguire loop sui dizionari» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso DevOps Bootcamp, passa a CoddyKit PRO. Il corso DevOps Bootcamp include 4 lezioni in totale.
Cosa imparerò in «Eseguire loop sui dizionari»?
Crei utenti da dati chiave-valore Eserciti DevOps Bootcamp con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare DevOps Bootcamp?
Non è richiesta alcuna esperienza precedente. DevOps Bootcamp su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.
Quanto tempo richiede la lezione «Eseguire loop sui dizionari»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione DevOps Bootcamp?
Sì. Ogni lezione DevOps Bootcamp include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- La parola chiave loop su un elenco
- Eseguire loop sui dizionari
- Loop annidati con subelements
- loop_control: label, index e pause