Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Loogiset Operaattorit Pythonissa | Pythonin If-Lauseiden Hallinta
Ohjausvirta Pythonissa

Loogiset Operaattorit Pythonissa

Pyyhkäise näyttääksesi valikon

Aiemmin tarkastelimme tilanteita, joissa if-lauseessa oli vain yksi ehto. Nyt perehdytään tilanteisiin, joissa täytyy arvioida useita ehtoja.

Sisäkkäiset if-lauseet

Yksi tapa on käyttää sisäkkäisiä if-lauseita, kuten esimerkissä:

123456
steps_taken = 8000 calories_burned = 300 if steps_taken >= 5000: if calories_burned >= 500: print("Excellent work! You hit your daily fitness goals.")

Kuitenkin runsas sisäkkäisten if-ehtojen käyttö ei ole suositeltavaa. Kokenut kehittäjä suosii loogisia operaattoreita ehtojen sisäkkäisyyden sijaan.

Loogisten operaattoreiden käyttö

Loogiset operaattorit mahdollistavat useiden ehtojen yhdistämisen tehokkaammin.
Python-kielessä on kolme loogista operaattoria: not, and, or.

12345
steps_taken = 8000 calories_burned = 300 if steps_taken >= 5000 and calories_burned >= 500: print("Excellent work! You hit your daily fitness goals.")

not-operaattori

not käytetään yhteen ehtoon ja se kääntää sen arvon.

1234
steps_taken = 0 if not steps_taken: print("No steps recorded yet. Time to get moving!")
Note
Huomio

Python-syntaksissa jokainen "tyhjä" arvo vastaa False-arvoa ja jokainen "ei-tyhjä" arvo vastaa True-arvoa. Esimerkiksi:

  • 0 on False, 1 on True;
  • [] on False, [1] on True;
  • "" on False, "a" on True;
  • jne.

Looginen and

Ehto and toimii vain, jos molemmat ehdot ovat True.

123456
steps_taken = 8000 calories_burned = 600 hydration_level = 2 if steps_taken >= 5000 and calories_burned >= 500 and hydration_level >= 2: print("Amazing! You've achieved all your fitness goals for the day.")

Looginen or

Ehto or toimii, jos vähintään yksi kahdesta (tai useammasta) määritetystä ehdosta on True.

Oletetaan, että haluat juhlistaa pieniä onnistumisia. Jos saavutat vähintään yhden tavoitteistasi, tulosta kannustava viesti.

123456
steps_taken = 8000 calories_burned = 200 hydration_level = 2 if steps_taken >= 10000 or calories_burned >= 500 or hydration_level >= 2: print("Great job! You're making progress on your fitness journey.")

Tässä hydration_level täyttää ehdon, joten if-lause suoritetaan. Muista, että or-operaattorilla vain yhden ehdon täytyy olla True.

1. Kuntoiluseurantasovelluksessa haluat tarkistaa, täyttääkö käyttäjä päivittäisen askeltavoitteen ja kalorimäärätavoitteen. Mitä loogista operaattoria tulisi käyttää?

2. Miten tarkistaisit, täyttääkö käyttäjä vähintään yhden kuntoilutavoitteistaan?

question mark

Kuntoiluseurantasovelluksessa haluat tarkistaa, täyttääkö käyttäjä päivittäisen askeltavoitteen ja kalorimäärätavoitteen. Mitä loogista operaattoria tulisi käyttää?

Valitse oikea vastaus

question mark

Miten tarkistaisit, täyttääkö käyttäjä vähintään yhden kuntoilutavoitteistaan?

Valitse oikea vastaus

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 4

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

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

Osio 1. Luku 4
some-alt