Warunki (if, elif, else) - zajęcia 3
Sprawdzanie danych
"==" znak przyrównania, "!=" znak nierówności, ">";"<" znaki większości; mniejszości
2==2
True
2!=2
False
2!=5
True
2<1
False
2>1
True
Czy działa to na słowach? Tak. W przypadku porównywania słów, komputer przekształca słowa na liczby według wybranego kodu. Najważniejsze tablice kodujące to ASCII oraz Unicode.
Bramki logiczne
Co będzie wynikiem?
- not 5==5 -> False
- not 5==5 or 2= =2 -> True
- (5>4) or (1>2) -> True
- not 2==2 and (3>4) -> False
- 5>=2 and not 5!=5 -> True


Funkcje decyzyjne
- if: sprawdzanie czy warunek jest spełniony
- elif: warunek użyty dla sytuacji gdy powyższy warunek okaże się nieprawdą
- else: funkcja do zadania zadania w przypadku niespełnienia ostatniego warunku
x=5
y=5
if x>y:
print("X jest większy od y")
elif y>x:
print("Y jest większy od x")
else:
(print("X jest równy Y")
print("Miłego dnia")
W teorii można użyć wszędzie "if", ale zabiera to wtedy niepotrzebnie pamięć procesora.
Istotne są wcięcia, wcięcia pod linijką z if/elif/else definiują co będzie wykonane w ramach tego polecenia. Linijki bez wcięć zawierają instrukcje niezależne od if/elif/else -> print("Miłego dnia")
f"string: sformatowany string, pozwala na modyfikacje stringów, np. wrzucanie stringa do stringa:
name = 'Mike'
f"Hello {name}"
'Hello Mike'
Prawie prawda
rybka="Nemo"
if rybka:
print("Masz rybkę!")
Powyższy kod wyświetli zdanie Masz rybkę!, ponieważ Python traktuje niepustą zmienną jako prawdę (True, 1). W przypadku rybka="", mamy do czynienia z pustym stringiem, który będzie traktowany przez Pythona jako pusty string i wynikiem porównania będzie False.
Sprawdzanie ocen

x = int(input("Ile punktów uzyskałaś/eś w skali 1-100punktów? "))
if x<55:
print("Twoja ocena to 1")
elif x<65:
print("Twoja ocena to 2")
elif x<75:
print("Twoja ocena to 3")
elif x<85:
print("Twoja ocena to 4")
elif x<95:
print("Twoja ocena to 5")
else:
print("Twoja ocena to 6")
Sprawdzanie hasła
- len() - sprawdzanie długości stringa len("jakis tekst") -> 11
- .lower() - zamienia znaki w stringu na małe litery
- .upper() - zamienia znaki w stringu na duże litery moje_haslo = "jakis tekst" moje_hasło.upper() -> "JAKIS TEKST"
! funkcje .upper()/.lower() nie zmieniają zawartości zmiennej moje_hasło na stałe!
WYMAGANIA DO HASŁA:
- długość min 12 znaków
- zarówno duże, jak i małe znaki
haslo=str(input("Wprowadź swoje hasło: "))
if len(haslo)<12:
print("Złe hasło! Za krótkie")
elif haslo.upper()!= haslo and haslo.lower()!=haslo:
print("Super!")
else:
print("Złe hasło! Hasło musi zawierać duże i małe litery")