Menu
CoddyTech

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) # true

size() 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()) # true

has() e in considerano solo le chiavi, mai i valori: player.has("Mia") è false.

challenge icon

Sfida

Facile

Il 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:

  1. Ogni chiave, una per riga
  2. ---
  3. Ogni valore, uno per riga
  4. ---
  5. Il numero di coppie
  6. ---
  7. true o false: se il dizionario è vuoto
  8. ---
  9. true o false: 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
---
true

Provalo 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
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Compilatore GDScript online