Loogiset Operaattorit Pythonissa
Aiemmin tarkastelimme tilanteita, joissa if-lauseessa oli vain yksi ehto. Nyt syvennymme tilanteisiin, joissa täytyy arvioida useita ehtoja.
Sisäkkäiset if-lauseet
Yksi tapa on käyttää sisäkkäisiä if-lauseita, kuten esimerkissä:
123456steps_taken = 8000 calories_burned = 300 if steps_taken >= 5000: if calories_burned >= 500: print("Excellent work! You hit your daily fitness goals.")
Kuitenkin sisäkkäisten if-ehtojen runsasta käyttöä ei pidetä parhaana käytäntönä. Kokeneempi 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.
12345steps_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.
1234steps_taken = 0 if not steps_taken: print("No steps recorded yet. Time to get moving!")
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.
123456steps_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ääritellystä ehdosta on True.
Oletetaan, että haluat juhlistaa pieniä saavutuksia. Jos saavutat vähintään yhden tavoitteistasi, tulosta kannustava viesti.
123456steps_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 kalorikulutustavoitteen. Mitä loogista operaattoria tulisi käyttää?
2. Miten tarkistaisit, täyttääkö käyttäjä vähintään yhden kuntoilutavoitteistaan?
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 6.67
Loogiset Operaattorit Pythonissa
Pyyhkäise näyttääksesi valikon
Aiemmin tarkastelimme tilanteita, joissa if-lauseessa oli vain yksi ehto. Nyt syvennymme tilanteisiin, joissa täytyy arvioida useita ehtoja.
Sisäkkäiset if-lauseet
Yksi tapa on käyttää sisäkkäisiä if-lauseita, kuten esimerkissä:
123456steps_taken = 8000 calories_burned = 300 if steps_taken >= 5000: if calories_burned >= 500: print("Excellent work! You hit your daily fitness goals.")
Kuitenkin sisäkkäisten if-ehtojen runsasta käyttöä ei pidetä parhaana käytäntönä. Kokeneempi 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.
12345steps_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.
1234steps_taken = 0 if not steps_taken: print("No steps recorded yet. Time to get moving!")
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.
123456steps_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ääritellystä ehdosta on True.
Oletetaan, että haluat juhlistaa pieniä saavutuksia. Jos saavutat vähintään yhden tavoitteistasi, tulosta kannustava viesti.
123456steps_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 kalorikulutustavoitteen. Mitä loogista operaattoria tulisi käyttää?
2. Miten tarkistaisit, täyttääkö käyttäjä vähintään yhden kuntoilutavoitteistaan?
Kiitos palautteestasi!