Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Funktioiden Esittely | Funktiot
Python Ninja

bookFunktioiden Esittely

Pyyhkäise näyttääksesi valikon

Haasteiden kasvaessa tarvitset usein Ninjan ryhmittelemään joukon toimintoja yhdeksi uudelleenkäytettäväksi komennoksi, jota voidaan kutsua aina tarvittaessa.

Kuvittele esimerkiksi, että kartalla on 2 sushilaattaa samassa muodostelmassa. Ninjan täytyy lähestyä kumpaakin, poimia ne ja jatkaa matkaa. Saman koodin kopioiminen joka kerta toimii, mutta siitä tulee nopeasti sekavaa ja aikaa vievää. Funktiot ratkaisevat tämän ongelman.

Funktion avulla voit ryhmitellä useita komentoja yhdeksi toiminnoksi ja antaa sille nimen. Kun funktio on määritelty, voit suorittaa kyseisen toiminnon milloin tahansa yhdellä koodirivillä. Ajattele funktiota kuin räätälöitynä liikkeenä, jonka opetat Ninjallesi.

Tältä koodi voisi näyttää ilman funktioita:

ninja.py

ninja.py

copy

Tässä kaksi liikeryhmää toistuu loogisesti uudelleen.

Ensimmäisen funktion luominen

Muunna nyt tämä toistuva logiikka funktioksi:

def collect_sushi(ninja):
    ninja.go_right()
    ninja.go_right()
    ninja.pick_sushi()

Tässä tapahtuu seuraavaa:

  • def aloittaa funktion määrittelyn;
  • collect_sushi on funktion nimi;
  • ninja on funktion parametri;
  • Sisennetyt rivit ovat komentoja, joita funktio suorittaa.

Funktion kutsuminen

Kun funktio on määritelty, sitä voi käyttää näin:

collect_sushi(ninja)
collect_sushi(ninja)

Kokeile tätä:

ninja.py

ninja.py

copy
Note
Huomio

Kaikki koodi funktion sisällä täytyy sisentää funktion määritelmän alle.

Esimerkiksi alla oleva koodi ei toimi, koska sitä ei ole sisennetty oikein:

def collect_sushi(ninja):
ninja.go_right()
ninja.go_right()
ninja.pick_sushi()
question mark

Miksi funktion, kuten collect_sushi(), käyttäminen on parempi vaihtoehto kuin saman liikkumiskoodin kopioiminen useaan kertaan?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 1

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Osio 3. Luku 1
some-alt