Découpage des tableaux
Fait partie de la section Fondamentaux du Journey GDScript de Coddy. Leçon 73 sur 92.
La méthode slice() renvoie un nouveau tableau contenant une partie des éléments. slice(begin, end) prend les éléments à partir de l’index begin jusqu’à l’index end, sans l’inclure :
var numbers := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(numbers.slice(2, 6))[2, 3, 4, 5]Sans end, la tranche va jusqu’à la fin du tableau :
print(numbers.slice(5))[5, 6, 7, 8, 9]Les indices négatifs comptent à partir de la fin. slice(-3) prend les trois derniers éléments, et slice(0, -2) prend tout sauf les deux derniers :
print(numbers.slice(-3))
print(numbers.slice(0, -2))[7, 8, 9]
[0, 1, 2, 3, 4, 5, 6, 7]Un troisième argument, le pas, sélectionne un élément sur n. slice(1, 8, 2) sélectionne les index 1, 3, 5 et 7 :
print(numbers.slice(1, 8, 2))[1, 3, 5, 7]slice() ne modifie pas le tableau d’origine : numbers contient toujours les dix éléments.
Défi
FacileLe programme lit une ligne d’éléments séparés par des virgules dans le tableau items (déjà écrit). Affiche la partie centrale du tableau avec slice() :
- Si le nombre d’éléments est impair, affiche l’élément du milieu et un élément de chaque côté (3 éléments ; s’il n’y a qu’un seul élément, affiche cet élément)
- S’il est pair, affiche les deux éléments du milieu
Pour apple,banana,orange,grape, la sortie est ["banana", "orange"], et pour a,b,c,d,e, c’est ["b", "c", "d"].
Essayez vous-même
extends Node
func _ready():
var items := OS.read_string_from_stdin().split(",")
# Affiche les éléments du milieu
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 dynamiqueEntraînez-vous par vous-même : Compilateur GDScript en ligne