Parcourir les dictionnaires
Fait partie de la section Fondamentaux du Journey GDScript de Coddy. Leçon 81 sur 92.
Une boucle for sur un dictionnaire vous donne ses clés, dans l’ordre où les paires ont été ajoutées. Utilisez chaque clé pour lire sa valeur :
var stock := {"apples": 3, "pears": 5, "plums": 2}
for fruit in stock:
print(fruit, ": ", stock[fruit])La sortie est :
apples: 3
pears: 5
plums: 2Quand tu as seulement besoin des valeurs, parcours values(). Cette boucle additionne tous les fruits :
var total := 0
for amount in stock.values():
total += amount
print(total) # 10Un dictionnaire peut aussi compter des éléments. Pour chaque mot, get(word, 0) renvoie le nombre obtenu jusqu’à présent, ou 0 la première fois que le mot apparaît :
var counts := {}
for word in ["gold", "gem", "gold"]:
counts[word] = counts.get(word, 0) + 1
print(counts) # { "gold": 2, "gem": 1 }Défi
FacileLe programme lit une ligne d’entrée : le butin ramassé par un joueur, séparé par des virgules, par exemple gold,gem,gold.
Compte le nombre d’occurrences de chaque objet dans un dictionnaire appelé counts. Affiche ensuite chaque objet et son nombre sous la forme item: count, un par ligne, dans l’ordre où les objets sont apparus pour la première fois.
Pour l’entrée gold,gem,gold,potion,gold, la sortie est :
gold: 3
gem: 1
potion: 1Essayez vous-même
extends Node
func _ready():
var loot := OS.read_string_from_stdin().split(",")
var counts := {}
# Compte chaque élément dans counts
# Affiche chaque élément et son nombre d’occurrences
pass
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Opérateurs, partie 1
Opérateurs arithmétiquesDivision entièreOpérateur moduloRaccourcis arithmétiquesRécapitulatif – calculs simplesOpérateurs de comparaison7Entrées/sorties de base
SortieSortie avec des variablesFormatage des chaînesEntréeConversion de typeRécapitulatif - Jusqu’à 120Récapitulatif - Vrai ou faux10Fonctions
Déclarer une fonctionArgumentsValeur de retourTypes de retourRécapitulatif - Fonction SigmaRécapitulatif - Fonction de validationValeurs par défaut5Opérateurs, partie 2
Opérateurs logiques, partie 1Opérateurs logiques, partie 2Récapitulatif - Logique simpleOpérateurs logiques, partie 3Opérateur ternaire8Calculateur de partage de l’addition
Message de bienvenueSaisie des données11FizzBuzz avec une touche originale
Présentation du jeuLa fonction FizzBuzz14Tableaux : notions avancées
Découpage des tableauxOpérateurs de séquenceAppartenanceTrier et inverser3Variables, partie 2
Déclaration de typeInférence de typeConstantesRécapitulatif - Initialiser les variablesConversion de type6Prise de décision
Instruction ifIf - ElseRécapitulatif - Calculatrice simpleIf - Else imbriquésInstruction match9Boucles
Boucle forBoucle whileBreakContinueRécapitulatif - FactorielleLa fonction rangeBoucle imbriquéeRécapitulatif - Saisie dynamique12Notions de base sur les tableaux
Déclarer un tableauAccéder aux éléments d’un tableauModifier des tableauxMéthodes des tableauxRécapitulatif - Tableau des produitsRécapitulatif - Tableau inverséTableaux typés15Dictionnaires
Créer des dictionnairesAccéder aux valeursModifier des dictionnairesMéthodes des dictionnairesParcourir les dictionnairesRécapitulatif - Dictionnaire d’inventaireEntraînez-vous par vous-même : Compilateur GDScript en ligne