Coding for KidsCoding for Kids
Kreative NivåerUtfordringerLærerveiledning
Stem på funksjoner
Avansert Pythonutviklingskurs
Kapittel
>
Nivå

Avanserte lister
Modifisering av en matrise

Mål

Samle og lagre vinflasker på vinstativet ved å endre en matrise.

Det er flere vinflasker som må lagres i et vinstativ. Imidlertid er det allerede flere flasker lagret i stativet, og elementene må plasseres på bestemte steder for å bli satt på plass.

Flaskene i stativet er lagret i en Matrise, en type Nestet Liste. Matriser er nestede lister der hvert element er en liste med nøyaktig samme lengde, noe som skaper et slags rutenett der elementene blir delt inn i rader og kolonner. For eksempel:

matrix = [ [1, 2, 3], [4, 5, 6], [7, 8, 9], [0, 0, 0] ]

I koden over har vi en Matrise med tre (3) kolonner og fire (4) rader. For å få tilgang til et element i Matrisen trenger du bare å angi raden og kolonnen der elementet befinner seg, på samme måte som du ville hentet et element fra en standard liste, bare med to indekser i stedet for én. For eksempel, basert på koden over: matrix[0][0] = 1, matrix[0][1] = 2, matrix[1][0] = 4, osv.

Det er fire (4) forskjellige typer vinflasker i kjelleren, disse er: "purple bottle", "green bottle", "blue bottle", "yellow bottle". Samle alle flaskene på banen slik at de kan lagres i stativet.

Det er også flasker lagret inne i kasser. Gå bort til den lyse X-en og bruk collect()-funksjonen mens du står vendt mot kassene for å hente flaskene. Det finnes to konstanter som inneholder innholdet i kassene: lower_crate og upper_crate. Navnene deres tilsvarer deres posisjon på kartet og brukes som følger: player.collect(lower_crate).

Når alle flaskene er samlet, plasser antallet flasker du har samlet for hver type i variabler, disse er: purple_bottle, green_bottle, blue_bottle, yellow_bottle. Deretter går du bort til den gyldne X-en og stiller deg med ansiktet mot vinstativet.

I kodeeditoren vil en Matrise med navnet wine_rack vises. Se etter elementene i Matrisen som har verdien 0, og legg til flaskene du har samlet i disse posisjonene. Matrisen vil ha fargen på flasken som skal legges til, angitt i hver rad. For å legge til et nytt element i Matrisen, skriv raden og kolonnen der du ønsker at verdien skal plasseres, for eksempel: wine_rack[0][1] = purple_bottle.

Husk at alle lister starter med posisjon 0. Når alle elementene er lagt til Matrisen og den er fullført, bruk place()-funksjonen etterfulgt av speak()-funksjonen på den gyldne X-en med navnet til Matrisen for å bekrefte verdien og fullføre nivået, slik som dette: player.place(wine_rack), player.speak(wine_rack).

Kodebok