Panoramica del progetto
Fa parte della sezione Logica e flusso del percorso GDScript di Coddy. Lezione 42 di 78.
Sfida
FacileIl Gestore dei record degli studenti conserva i dati degli studenti: la loro età, i voti e i corsi che frequentano. Nei prossimi passaggi aggiungerai studenti, inserirai voti, controllerai le iscrizioni, calcolerai le medie, elencherai gli studenti di un corso e troverai i migliori studenti.
Il programma legge dei comandi, uno per riga, come add Alice 20 Math Physics o grade Alice 90. In questo passaggio, imposta i record e il ciclo dei comandi:
- Al livello superiore dello script, tra
extends Nodeefunc _ready():, dichiara un dizionario vuoto:var student_records := {}. Una variabile dichiarata lì, al di fuori di ogni funzione, può essere usata da tutte le funzioni dello script, cosa necessaria nei prossimi passaggi. - In
_ready(), avvia un ciclowhile true:. A ogni iterazione, leggi una riga, dividila in corrispondenza degli spazi e trasforma il risultato in un array:var parts := Array(OS.read_string_from_stdin().split(" ", false)) - Usa
match parts:con due pattern di array:["show"]: stampastudent_records["exit"]: stampaGoodbye!e termina il ciclo conbreak
Per ora, ignora tutti gli altri comandi. Ogni test termina con exit. Per i comandi
show
exitl'output è:
{ }
Goodbye!Provalo tu
extends Node
# Dichiara student_records qui
func _ready():
# Leggi i comandi in un ciclo fino all'uscita
pass
Tutte le lezioni di Logica e flusso
1Stringhe in dettaglio
Metodi delle stringheRicerca nelle stringheSostituzione e trimDividere e unireRipasso - verifica del nome utente4Dizionari - Parte 2
Dizionari annidatiArray di dizionariUnire dizionariCopiare dizionariRiepilogo - Contatore di frequenza7Enumerazioni
Che cos'è un'enumerazione?Definire un'enumerazioneValori dell'enumerazioneEnumerazioni in MatchRiepilogo - Semaforo10Funzioni avanzate
Restituire più valoriFunzioni lambda - Parte 1Funzioni lambda - Parte 2Ripasso - Ordinamento con lambdaFunzioni ricorsive - Parte 1Funzioni ricorsive - Parte 2Ripasso - Somma di un array annidato13Sistema di gestione dell'inventario
Panoramica del progettoAggiungere un articolo2Decisioni avanzate
Match con variabiliGuardie di matchPattern per arrayPattern per dizionariVerifiche di appartenenzaRiepilogo - Parser di comandi5Applicazione Rubrica
Visualizzare il menuAggiungere un contatto8Gestione dei registri degli studenti
Panoramica del progettoAggiungi studente11Funzioni di ordine superiore
Il metodo mapIl metodo filterIl metodo reduceany e allRipasso - Validatore di emailRipasso - Elaboratore di numeri3Array multidimensionali
Fondamenti degli array 2DAccedere agli elementi di un array 2DCicli annidati con array 2DRipasso - Array 2DArray frastagliatiSchemi comuni con gli array 2DRipasso - Tabellone di gioco6Insiemi con i dizionari
Che cos'è un insieme?Il dizionario come insiemeAggiungere e rimuovereUnione e intersezioneDifferenza tra insiemiRiepilogo - Rimuovere i duplicati9Aggregazione avanzata dei dati
Somma dei valoriTrovare minimo e massimoOrdinamento personalizzatoRiepilogo - Ordinatore di dizionariEsercitati da solo: Compilatore GDScript online