| Dizionario II | more difficult








Salve!
Come promesso ho cercato di portare nuove informazioni sul dizionario perché credo che possa essere utile quando si manipolano dati più complessi e anche perché questo tipo di scrittura, questo formato ritorna spesso in programmazione. Sono informazioni che ho cercato di reperire nel più breve tempo possibile quindi scusate eventuali imperfezioni o errori , come sempre vi ricordo che per chi avesse più competenza può aiutare/rettificare .
👉  Qui invece troverai il primo tutorial sul dizionario

Partiamo quindi con la cosa direi più importante, come si presenta questo formato
{"TAG":"VALUE"}
Come possiamo notare anche dall'esempio in basso un oggetto (potrei osare dicendo l'informazione che stiamo salvando) è compreso tra le parentesi graffe, al suo interno il TAG e il VALUE sono separati dai due punti, entrambi sono compresi all'interno delle virgolette. Considerando il primo esempio BRUNELLO è il tag che ho usato per quel vino e 15 è il suo valore , nel mio caso l'ipotetico prezzo. Una lista o un array è introdotto dalle parentesi quadre, la virgola invece è un separatore. La lista dei VINI  e quella dei DOLCI saranno comprese da parentesi quadre e separate da una virgola, per portare entrambi gli esempi.


Vediamo quindi se riusciamo a complicare un po' le cose creando una bella variabile che conterrà tutte le nostre info in modalità dizionario e cercare di vedere come raggiungere i vari livelli. Make a dictionary lo dovremo usare ad ogni livello , infatti è presente sia prima dei primo livello dei TAG sia all'interno di ogni TAG per realizzare il secondo livello , proseguendo con l'esempio pizzeria (molto richiesto in lockdown) abbiamo il primo livello di TAG che introduce le aree gastronomiche e per ognuna un secondo livello che i vari piatti o cibi.
  

Vediamo come richiamare o visionare i dati per poi poterli utilizzare al meglio.
get keys e get values sono molto semplici e restituiscono una  lista di TAG e di VALUES relativa al  livello in cui ci troviamo, infatti nel primo caso (get semplice, line arancione ultima immagine ) ci restituisce PIZZE,PRIMI,SECONDI,DOLCI mentre in unione a get value for key ( immagine successiva, linea gialla ultima foto ) mi darà i TAG del sottolivello SECONDI o PIZZE, credo che il balloon parli più di mille mie parole 😂



In questo caso infatti siamo entrati nel tag SECONDI per leggere tutti i tag contenuti al suo interno , lo stesso per pizze andando a prelevare i nomi delle pizze. Questa combinazione è possibile perché il get value for key restituisce tutto quello salvato nel tag PIZZE , nel nostro caso un altro dizionario , quindi può estrapolare una lista di tag. Entrambi i blocchi hanno in in put la chiave, il nome del dizionario e un valore di ritorno se il tag non esiste. 

Cosa molto differente è il get value at key path ( linea giallo ocra )che riesce a muoversi attraverso i vari livelli passando come parametro per il movimento una lista, i primi parametri sono i tag che dovrà raggiungere o attraversare e anche un' indice per identificare il valore corretto da prelevare una volta raggiunta la lista finale. Nel nostro caso dal menu PIZZE scegliamo la SICILIANA e con l'indice 1 andiamo a leggere i vari ingredienti. 

Ok, tutto bello ma come li porto i dati nel dizionario , oltre quelli da variabile già nota?
Ci viene in aiuto il blocco set value for key che ci permette di salvare all'interno di un tag ( parliamo di quelli più esterni) il valore di nostro piacimento. Nel caso questo tag non esistesse viene creato un nuovo tag, quindi attenti ai valori che passate a questo blocco perché potreste trovarvi con dati che non volevate salvare o salvati male. 
Ormai abbiamo capito che se leggiamo la parola path possiamo decidere di scendere in profondità ed andare a salvare il valore posizionato nella lista SICILIANA, quindi il prezzo ( linea giallo ocra con terminale arancione ).

Percorsi dei comandi 


Spero di aver dato qualche informazione in più su questi dizionari e aver spiegato un po' come i dati vengono salvati e richiamati, sicuramente la cosa interessante del dizionario o comunque del formato JSON è che si trova molto spesso , specialmente in risposta da pagine web o database , quindi si possono velocemente ricevere e codificare informazioni già salvate da altri .
Come sempre se ci sono domande, riflessioni, richieste vi aspetto nei commenti qui o sui social per cercare di imparare nuove cose.
Alla prossima!


 Se hai apprezzato il mio lavoro offrimi un bel caffè 😍

 

Commenti

Ciao, spero ti piaccia il blog. Se ti fa piacere qui puoi offrirmi un caffè!

Post popolari in questo blog

GOOGLE SCRIPT & KODULAR READ, WRITE, UPDATE, DELETE

Tu lo conosci THUNKABLE?