Metodi dei dizionari
Fa parte della sezione Fondamenti del percorso GDScript di Coddy. Lezione 80 di 92.
I dizionari hanno metodi che ti dicono cosa contengono.
keys() restituisce un array delle chiavi e values() restituisce un array dei valori, nell’ordine delle coppie:
var player := {"name": "Mia", "hp": 100, "level": 3}
print(player.keys()) # ["name", "hp", "level"]
print(player.values()) # ["Mia", 100, 3]has() verifica se una chiave esiste. L'operatore in esegue lo stesso controllo:
print(player.has("hp")) # true
print(player.has("mana")) # false
print("level" in player) # truesize() restituisce il numero di coppie e is_empty() verifica se non ce ne sono:
print(player.size()) # 3
print(player.is_empty()) # false
var bag := {}
print(bag.is_empty()) # truehas() e in considerano solo le chiavi, mai i valori: player.has("Mia") è false.
Sfida
FacileIl programma legge due righe di input: un elenco di coppie scritte come key:value e separate da virgole, e una chiave da controllare. Il codice fornito riempie già il dizionario info usando la prima riga.
Stampa, in quest’ordine:
- Ogni chiave, una per riga
---- Ogni valore, uno per riga
---- Il numero di coppie
---trueofalse: se il dizionario è vuoto---trueofalse: se esiste la chiave del secondo input
Per gli input name:Mia,hp:100,class:Mage e hp, l’output è:
name
hp
class
---
Mia
100
Mage
---
3
---
false
---
trueProvalo tu
extends Node
func _ready():
var text := OS.read_string_from_stdin()
var key := OS.read_string_from_stdin()
var info := {}
for pair in text.split(","):
var parts := pair.split(":")
info[parts[0]] = parts[1]
# Stampa le chiavi, i valori, la dimensione, is_empty e has(key)
# con --- tra le parti
pass
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori Parte 1
Operatori aritmeticiDivisione interaOperatore moduloScorciatoie aritmeticheRipasso - Matematica sempliceOperatori di confronto7Input/Output di base
OutputOutput con variabiliFormattazione delle stringheInputConversione di tipoRiepilogo - Fino a 120Riepilogo - Vero o falso10Funzioni
Dichiarare una funzioneArgomentiRestituzioneTipi di ritornoRiepilogo - Funzione SigmaRiepilogo - Funzione di convalidaValori predefiniti5Operatori - Parte 2
Operatori logici - Parte 1Operatori logici - Parte 2Riepilogo - Logica sempliceOperatori logici - Parte 3Operatore ternario8Calcolatore per dividere il conto
Messaggio di benvenutoInserimento dei dati11FizzBuzz con una variante
Panoramica del giocoLa funzione FizzBuzz3Variabili Parte 2
Dichiarazione del tipoInferenza del tipoCostantiRipasso - Inizializzare le variabiliConversione di tipo6Strutture decisionali
Istruzione ifIf - ElseRipasso - Calcolatrice sempliceIf - Else annidatiIstruzione match9Cicli
Ciclo forCiclo whilebreakcontinueRipasso - FattorialeLa funzione rangeCiclo annidatoRipasso - Input dinamico12Nozioni di base sugli array
Dichiarare un arrayAccedere agli elementi di un arrayModificare gli arrayMetodi degli arrayRipasso - Array prodottoRipasso - Array invertitoArray tipizzati15Dizionari
Creare dizionariAccedere ai valoriModificare i dizionariMetodi dei dizionariIterare sui dizionariRiepilogo - Dizionario dell'inventarioEsercitati da solo: Compilatore GDScript online