Acessando valores
Parte da seção Fundamentos do Journey de GDScript da Coddy. Lição 78 de 92.
Para ler um valor, coloque sua chave entre colchetes após o nome do dicionário:
var player := {"name": "Mia", "hp": 100}
print(player["name"]) # Mia
print(player["hp"]) # 100A chave deve corresponder exatamente, incluindo as letras maiúsculas: "Name" e "name" são chaves diferentes.
Ler uma chave que não está no dicionário é um erro, e o programa para nessa linha:
print(player["mana"]) # Erro: a chave "mana" não existeQuando uma chave pode estar ausente, use get(). Ele retorna o valor da chave ou o valor padrão que você passar como segundo argumento quando a chave estiver ausente:
print(player.get("hp", 0)) # 100
print(player.get("mana", 0)) # 0Sem um valor padrão, get() retorna null para uma chave ausente, e print() a exibe como <null>.
Desafio
FácilO programa lê quatro linhas de entrada:
- O nome de um item
- Um preço (um número decimal)
- Uma quantidade em estoque (um número inteiro)
- Uma chave para pesquisar
Crie um dicionário chamado item com estes pares:
"name"associado ao nome do item"price"associado ao preço"stock"associado à quantidade em estoque
Em seguida, imprima o valor da chave da quarta entrada. Se a chave não estiver no dicionário, imprima Not found.
Para as entradas Potion, 2.5, 15 e price, a saída é:
2.5Para as entradas Bow, 30.75, 7 e color, a saída é:
Not foundExperimente você mesmo
extends Node
func _ready():
var item_name := OS.read_string_from_stdin()
var price := float(OS.read_string_from_stdin())
var stock := int(OS.read_string_from_stdin())
var key := OS.read_string_from_stdin()
# Crie o dicionário do item aqui
# Imprima o valor de key ou Not found
pass
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
4Operadores - Parte 1
Operadores aritméticosDivisão inteiraOperador móduloAtalhos aritméticosRevisão - Matemática básicaOperadores de comparação7Entrada e Saída Básicas
SaídaSaída com VariáveisFormatação de StringsEntradaConversão de TipoRevisão - Até 120Revisão - Verdadeiro ou Falso10Funções
Declare uma funçãoArgumentosRetornoTipos de retornoRevisão - Função SigmaRevisão - Função de validaçãoValores padrão13Percorrendo Arrays
Percorrendo elementosPercorrendo com índicesPercorrendo strings — Parte 1Percorrendo strings — Parte 216Rastreador de Despesas Diárias
Visão Geral do ProjetoSair do Programa5Operadores Parte 2
Operadores lógicos Parte 1Operadores lógicos Parte 2Revisão - Lógica simplesOperadores lógicos Parte 3Operador ternário8Calculadora de Divisão da Conta
Mensagem de Boas-vindasObtendo Dados de Entrada11FizzBuzz com uma Reviravolta
Visão Geral do JogoA Função FizzBuzz3Variáveis - Parte 2
Declaração de tipoInferência de tipoConstantesRevisão - Inicialização de variáveisConversão de tipo6Tomada de decisões
Instrução ifIf - ElseRevisão - Calculadora simplesIf - Else aninhadoInstrução match9Laços de repetição
Laço forLaço whileInterromperContinuarRevisão - FatorialA função rangeLaço aninhadoRevisão - Entrada dinâmica12Fundamentos de Arrays
Declarando um ArrayAcessando elementos de um ArrayModificando ArraysMétodos de ArrayRevisão - Array de produtosRevisão - Array invertidoArrays tipados15Dicionários
Criando dicionáriosAcessando valoresModificando dicionáriosMétodos de dicionárioPercorrendo dicionáriosRevisão - Dicionário de inventárioPratique por conta própria: Compilador de GDScript online