Warunki i porównania

Warunki i porównania

Operatory

== równe
!= różne
> większe
>= większe lub równe
< mniejsze
<= mniejsze lub równe

Operatory logiczne

and - wszystko musi być spełnione
or - przynajmniej jeden warunek musi być spełniony
not - odwraca wynik

Instrukcje warunkowe

if - (jeżeli) sprawdza czy warunek jest wypełniony
elif - następne warunki po if
else - to co nie spełniło warunków

if A > B:
    zrob_cos(1)
elif A==B:
    zrob_cos(2)
else:
    zrob_cos(3)

Warunki w przykładzie powyżej są wykonywane po kolei. Jeżeli pierwszy warunek zostanie spełnione następne nie będą sprawdzane.

if A>B:
  zrob_cos

if A==B:
  zrob_cos
  
if A<B:
  zrob_cos

W przykładzie powyżej wszystkie warunki będą sprawdzane.

Porównywanie tekstów

"boa"<"pyton"

ord('b') 
ord('p') 

To porównanie zwróci True, ponieważ python porównuje wartość przypisane pierwszym literą i to je porównuje. W tym przypadku za pomocą komendy ord sprawdzamy, że b = 98, p=112 więc b<p.

Jeżeli pierwsze litery byłyby takie same, python porównywałby następne (od lewej do prawej) aż będą różne i wtedy je porówna.

Warunek - wyraz

waz = "Pyton królewski"

if waz:
  print("Maz węża!")

Tak konstrukcja zadziała, ponieważ zmienna nie przechowuje "pustej" wartość. "Niepuste" wartości nie będące liczbą zero są traktowane jako True. Liczba 0 i puste elementy to False.

String - metody

print(nazwa_zmienej.upper()) - zmienia na duże litery
print(nazwa_zmienej.lower()) - zmienia na małe litery

Zadanie - quiz

punkty=0 

print("""
Tylko jedna odpowiedź w każdym pytaniu jest poprawna.
Złą opowiedz odejmuje 0.5pkt
      """)


print("""
1. Jak węże "czują" zapachy?
      
a) Nie czują
b) Nosem
c) Językiem 
      """)
odpowiedz = input("Wprowadz swoja odp. (a/b/c): ")
if odpowiedz =="c":
    punkty+=1
else:
    punkty-=0.5


print("""
2. Jaki wąż jest najdłuższy? 
      
a) Pyton siatkowy
b) Kobra
c) Pyton królewski 
      """)
odpowiedz = input("Wprowadz swoja odp. (a/b/c): ")
if odpowiedz =="a":
    punkty+=1
else:
    punkty-=0.5


print("""
3. Jaki wąż jest uznawany za największego? 
      
a) Pyton siatkowy
b) Anakonda zielona
c) Kobra królewska
      """)
odpowiedz = input("Wprowadz swoja odp. (a/b/c): ")
if odpowiedz =="b":
    punkty+=1
else:
    punkty-=0.5


print("""
4. Ile powiek mają węże?
      
a) Jedną 
b) Dwie 
c) Nie mają powiek 
      """)
odpowiedz = input("Wprowadz swoja odp. (a/b/c): ")
if odpowiedz =="c":
    punkty+=1
else:
    punkty-=0.5


print("""
5. Jak węże odbierają dźwięki?
      
a) Mają uszy zewnętrzne jak ssaki
b) Nie słyszą w ogóle
c) Odbierają wibracje przez ciało i ucho wewnętrzne
      """)
odpowiedz = input("Wprowadz swoja odp. (a/b/c): ")
if odpowiedz =="c":
    punkty+=1
else:
    punkty-=0.5


print("""
6. Dlaczego czarna mamba nazywa się "czarna"?
      
a) Bo ma całe czarne ciało
b) Bo wnętrze jej paszczy jest czarne
c) Bo to kolor jej jadu
      """)
odpowiedz = input("Wprowadz swoja odp. (a/b/c): ")
if odpowiedz =="b":
    punkty+=1
else:
    punkty-=0.5

print("""
7. Jak węże są w stanie połknąć zdobycz w całość?
      
a) Ich szczęki są zbudowane z elastycznych więzadeł, które pozwalają im się rozszerzać 
b) Potrafią "wyłamać" swoją szczękę, by zrobić więcej miejsca
c) Ich szczęki są bardzo siline 
      """)
odpowiedz = input("Wprowadz swoja odp. (a/b/c): ")
if odpowiedz =="a":
    punkty+=1
else:
    punkty-=0.5


print("""
8. Co robi pyton królewski, gdy czuje się zagrożony?
      
a) Syczy głośno i atakuje natychmiast
b) Zwija się w kulkę, chowając głowę w środku
c) Zrzuca skórę, żeby zmylić przeciwnika  
      """)
odpowiedz = input("Wprowadz swoja odp. (a/b/c): ")
if odpowiedz =="b":
    punkty+=1
else:
    punkty-=0.5


print("""
9. Co robi heterodon, gdy czuje się zagrożony?
      
a) Syczy i udaje, że atakuje, a jeśli to nie działa udaje martwego 
b) Atakuje, aż odstraszy zagrożenie 
c) Skacze w kierunku napastnika
      """)
odpowiedz = input("Wprowadz swoja odp. (a/b/c): ")
if odpowiedz =="a":
    punkty+=1
else:
    punkty-=0.5


print("""
10. Po co wielu wężom intensywne lub kontrastowe ubarwienie?
      
a) Aby przyciągać partnera
b) Aby odstraszać drapieżniki, sygnalizując, że są jadowite
c) Aby wtopić się w tło
      """)
odpowiedz = input("Wprowadz swoja odp. (a/b/c): ")
if odpowiedz =="b":
    punkty+=1
else:
    punkty-=0.5   

print(f"Twój wynik to: {punkty}")