Zajęcia Python III nr 3 - notatki
1. Warunkowanie w Pythonie, logika
Jakie porównania (w formie pytania zamkniętego) wykonujemy w Pythonie:
- pytanie czy coś jest równe
==- czy coś jest nierówne
!=- czy coś jest większe
>- czy jest większe lub równe
>=- czy jest mniejsze
<- czy jest mniejsze lub równe
<=W naszej wiki: https://wiki.robisz.to/books/python/page/podejmowanie-decyzji
- Operatory logiczne
Przy korzystaniu z wartości logicznych możemy posługiwać sie dodatkowo operatorami.
- AND - jeżeli choć jeden z parametrów jest fałszem, to and zwróci nam fałsz
- OR - jeżeli choć jeden z parametrów będzie prawdą to or zwróci nam prawdę
- NOT - odwraca nam wartość logiczną (czyli np. prawdę zamienia w fałsz) wartość
Istnieje kolejność działań przy operatorach logicznych. Najpierw rozstrzygany jest operator not, potem and i na końcu or.

WARUNKI
- if - jeżeli
- elif - jeśli nie to
- else - wtedy i tylko wtedy
Przykład warunku i bloków kodu:
wiek = int(input("Podaj swój wiek: ")
if wiek < 18
print("Jesteś niepełnoletni/-a)")
print("Potrzebujesz zgody opiekuna/-ki na korzystanie z naszego serwisu.")
print("*********")
zgoda = input("Czy masz zgodę? t/n: ")
if zgoda == "t"
print("Dziękuję, miłego korzystania z aplikacji")
print("Koniec programu.")Warto zwrócić uwagę na wcięcia. Jeżeli warunek w danym wcięciu nie został spełniony, Python może opuścić tą linijkę kodu. Wcięcie pokazuje Pythonowi, że może wykonywać pewne instrukcje tylko w przypadku gdy jakiś warunek zostanie spełniony i pomijać gdy nie jest.
Dzięki wcięciom Python wie co jest blokiem kodu. Kolejne bloki mogą być zagjnieżdżone - może być więcej takich wcięć jedno w drugim, do tworzenia bardziej skomplikowanych elementów.
Warunki można używać równocześnie. Przykład:
wiek = int(input("Podaj wiek: "))
if wiek < 18:
print("Jesteś niepełnoletni/-a")
print("Potrzebujesz zgody opiekuna/-ki na korzystanie z naszego serwisu.")
zgoda = input("Czy masz zgodę? t/n: ")
if zgoda == "t":
print("Dziękuję, miłego korzystania z aplikacji.")
elif wiek > 70:
print("Nasz serwis jest dedykowany dla osób poniżej 70 lat.")
zgoda1 = input("Czy na pewno chcesz kontynuować? t/n: ")
if zgoda1 == "t":
print("Dziękuję, miłego korzystania z aplikacji.")
else:
print("Witamy w naszym serwisie!")
print("Koniec programu.")Możemy używać wielu warunków elif, co oszczędza pracy komputerowi:


skrót programistyczny - linijka 61 i 62 mają takie same znaczenie w tym przypadku.
Wbudowane funkcje zwiemy metodami. Przykład, split (który dzieli tekst na osobne wyrazy), a także len (który zlicza elementy w kolekcji)
tekst_uzytkownika = input("Wpisz tekst: ")
podzielony_tekst = tekst_uzytkownika.split()
ilosc_wyrazow = len(podzielony_tekst)
if ilosc_wyrazow < 10
print("Tekst jest za krótki.")"Prawie prawda"
Każda wartość "niepusta", różna od 0 to prawda. 0 lub pusta zawartość (null) to fałsz.
bohater_filmu = ""
if not bohater_filmu:
print("nie wpisano bohatera. ")To rozwiązanie skraca konstruowanie instrukcji warunkowych, ale wymaga szczególnej uwagi aby nie popełnić błędów.
Funkcja lower - zamienia wszystkie litery na małe. Np.
if odpowiedz.lower() == "c":
punkty += 1
else:
punkty -= 0.5Nie trzeba cały czas pisać print() aby mieć kilka linijek tekstu naraz. Wystarczy jeden print() i więcej cydzysłowiów (tyle ile jest stringów). Np.
print("""Która z poniższych metod zabezpieczenia 2FA uznawana jest za najbezpieczniejszą?")
a. SMS
b. kod z aplikacji (TOTP)
c. klucz sprzętowy""")Funkcja która od razu zaokrągla do drugiego miejsca po przecinku (tu gdzie jest 2f)
wzrost = float(input("Wpisz wzrost (w metrach): "))
waga = float(input("Wpisz ile ważysz(w kg): "))
indeks_bmi= waga / (wzrost*wzrost)
print(f"Twoj indeks BMI to: {indeks_bmi: .2f}")