Menu
CoddyTech

Modificando dicionários

Parte da seção Fundamentos do Journey de GDScript da Coddy. Lição 79 de 92.

Para alterar um valor, atribua-o à sua chave usando colchetes. Se a chave for nova, o par será adicionado ao final do dicionário:

var player := {"name": "Mia", "hp": 100}
player["hp"] = 80 # atualiza o valor de "hp"
player["level"] = 2 # adiciona um novo par
print(player)

A saída é:

{ "name": "Mia", "hp": 80, "level": 2 }

Você também pode atualizar um valor a partir do valor anterior, como em uma variável:

player["level"] += 1 # level agora é 3

Para remover um par, chame erase() com sua chave. Ele retorna true quando a chave é removida e false quando a chave não está presente. Uma chave ausente não é um erro:

print(player.erase("hp")) # true
print(player.erase("hp")) # false
print(player) # { "name": "Mia", "level": 3 }

erase() não retorna o valor removido. Se você precisar dele, leia-o antes de apagar a chave.

challenge icon

Desafio

Fácil

O programa lê quatro linhas de entrada:

  1. Um nome de jogador
  2. Um nível inicial (um número inteiro)
  3. Um novo nível (um número inteiro)
  4. Um novo par escrito como key:value, por exemplo guild:Falcons

O dicionário player já foi criado com "name" e "level". Então:

  1. Atualize "level" com o novo nível
  2. Divida a quarta entrada em : e adicione esse par ao dicionário (mantenha o valor como texto)
  3. Salve o valor de "name" em uma variável e, em seguida, apague a chave "name"

Imprima o nome salvo na primeira linha e o dicionário na segunda linha. Para as entradas Mia, 4, 5 e guild:Falcons, a saída é:

Mia
{ "level": 5, "guild": "Falcons" }

Experimente você mesmo

extends Node

func _ready():
	var player_name := OS.read_string_from_stdin()
	var level := int(OS.read_string_from_stdin())
	var new_level := int(OS.read_string_from_stdin())
	var pair := OS.read_string_from_stdin()

	var player := {"name": player_name, "level": level}

	# 1. Atualize o nível
	# 2. Adicione o par da quarta entrada
	# 3. Salve o nome e depois apague-o
	# 4. Imprima o nome salvo e o dicionário
	pass
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos

Pratique por conta própria: Compilador de GDScript online