Découper et joindre
Fait partie de la section Logique et flux d’exécution du Journey GDScript de Coddy. Leçon 4 sur 78.
Tu as déjà découpé des chaînes avec split() et assemblé des tableaux avec join(). Ces deux méthodes peuvent faire davantage.
Les éléments de split() sont des chaînes, exactement comme elles apparaissent entre les séparateurs, espaces compris. Nettoie ou convertis chaque élément avant de l’utiliser. Un élément du résultat peut être remplacé à l’aide de son index :
var items := "sword, shield ,bow".split(",")
print(items)
for i in range(items.size()):
items[i] = items[i].strip_edges()
print(items)["sword", " shield ", "bow"]
["sword", "shield", "bow"]Le deuxième argument de split() est celui que tu as rencontré précédemment : true conserve les éléments vides, false les supprime. Un troisième argument limite le nombre de coupures. split(" ", true, 1) ne coupe qu’au premier espace, ce qui sépare une commande du reste de la ligne :
print("say hello there".split(" ", true, 1))["say", "hello there"]rsplit() fonctionne de la même manière, mais compte les séparations depuis la droite ; il peut donc séparer au dernier point d’un nom de fichier :
print("save.backup.json".rsplit(".", true, 1))["save.backup", "json"]join() accepte également un tableau de nombres et convertit chacun d’eux en texte : ", ".join([3, 1, 2]) donne "3, 1, 2".
Défi
FacileLe programme lit une ligne de mots séparés par des virgules dans line. Il peut y avoir des espaces autour des mots, par exemple red, green ,blue.
Affichez trois lignes :
- Le nombre de mots
- Les mots sans les espaces autour, en majuscules, joints avec
>(espace, signe supérieur à, espace) - Le mot le plus long, sans espaces. Si plusieurs mots ont la même longueur, affichez le premier
Pour l’entrée red, green ,blue, la sortie est :
3
RED > GREEN > BLUE
greenEssayez vous-même
extends Node
func _ready():
var line := OS.read_string_from_stdin()
# Affiche le nombre, les mots concaténés et le mot le plus long
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Logique et flux d’exécution
1Les chaînes de caractères en profondeur
Méthodes des chaînesRechercher dans les chaînesRemplacer et supprimer les espacesDécouper et joindreRécapitulatif - Vérifier un nom d’utilisateur4Dictionnaires, partie 2
Dictionnaires imbriquésTableaux de dictionnairesFusionner des dictionnairesCopier des dictionnairesRécapitulatif - Compteur de fréquence7Énumérations
Qu’est-ce qu’une énumération ?Définir une énumérationValeurs d’une énumérationÉnumérations avec matchRécapitulatif - Feu de circulation10Fonctions avancées
Renvoyer plusieurs valeursFonctions lambda, partie 1Fonctions lambda, partie 2Récapitulatif - Tri avec lambdaFonctions récursives, partie 1Fonctions récursives, partie 2Récapitulatif - Somme d’un tableau imbriqué13Système de gestion des stocks
Présentation du projetAjouter un article2Prise de décision avancée
Correspondance avec des variablesGardes de correspondanceMotifs de tableauMotifs de dictionnaireVérifications d’appartenanceRécapitulatif – Analyseur de commandes5Application de carnet d’adresses
Afficher le menuAjouter un contact8Gestionnaire des dossiers étudiants
Aperçu du projetAjouter un étudiant3Tableaux multidimensionnels
Bases des tableaux 2DAccéder aux éléments d’un tableau 2DBoucles imbriquées avec des tableaux 2DRécapitulatif - Tableaux 2DTableaux irréguliersMotifs courants des tableaux 2DRécapitulatif - Plateau de jeu6Les ensembles avec les dictionnaires
Qu’est-ce qu’un ensemble ?Un dictionnaire comme ensembleAjouter et supprimerUnion et intersectionDifférence d’ensemblesRécapitulatif – Supprimer les doublons9Agrégation avancée de données
Additionner des valeursTrouver le minimum et le maximumTri personnaliséRécapitulatif - Trieur de dictionnairesEntraînez-vous par vous-même : Compilateur GDScript en ligne