Menu
CoddyTech

Métodos de diccionarios

Parte de la sección Fundamentos del Journey de GDScript de Coddy. Lección 80 de 92.

Los diccionarios tienen métodos que te indican qué contienen.

keys() devuelve un array de las claves, y values() devuelve un array de los valores, en el orden de los pares:

var player := {"name": "Mia", "hp": 100, "level": 3}
print(player.keys()) # ["name", "hp", "level"]
print(player.values()) # ["Mia", 100, 3]

has() comprueba si existe una clave. El operador in realiza la misma comprobación:

print(player.has("hp")) # true
print(player.has("mana")) # false
print("level" in player) # true

size() devuelve el número de pares, y is_empty() comprueba si no hay ninguno:

print(player.size()) # 3
print(player.is_empty()) # false
var bag := {}
print(bag.is_empty()) # true

has() e in solo comprueban las claves, nunca los valores: player.has("Mia") es false.

challenge icon

Desafío

Fácil

El programa lee dos líneas de entrada: una lista de pares escritos como key:value y separados por comas, y una clave que comprobar. El código proporcionado ya llena el diccionario info a partir de la primera línea.

Imprime, en este orden:

  1. Cada clave, una por línea
  2. ---
  3. Cada valor, uno por línea
  4. ---
  5. El número de pares
  6. ---
  7. true o false: si el diccionario está vacío
  8. ---
  9. true o false: si existe la clave de la segunda entrada

Para las entradas name:Mia,hp:100,class:Mage y hp, la salida es:

name
hp
class
---
Mia
100
Mage
---
3
---
false
---
true

Pruébalo tú mismo

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]

	# Imprime las claves, los valores, el tamaño, is_empty y has(key)
	# con --- entre las partes
	pass
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos

Practica por tu cuenta: Compilador de GDScript online