Python #2 (deklaracje zmiennych, typy zmiennych, f-string)
- Przelicznik km na mile i kalkulator BMI:
km = float(input("podaj odległość w kilometrach "))
mile = km * 0.621371192
print(f"{km} km to {mile:.2f} mile")waga = float(input("Podaj swoją wagę (kg): "))
wzrost = float(input("Podaj swój wzrost (m): "))
bmi = waga/(wzrost**2)
print ("Twoje BMI wynosi", (bmi))- Kalkulator BMI - kod alternatywny
# 1) Dane od użytkownika (wzrost w cm i masa w kg)
wzrost_cm = float(input("Podaj wzrost w centymetrach (np. 170): ").replace(",", "."))
masa_kg = float(input("Podaj masę w kilogramach (np. 68.5): ").replace(",", "."))
# 2) Zamiana wzrostu na metry
wzrost_m = wzrost_cm / 100
# 3) Obliczenie BMI
bmi = masa_kg / (wzrost_m ** 2)
# 4) Zaokrąglenie i wypisanie
print(f"Twoje BMI: {bmi:.1f}")Zmienna - def. z wiki - konstrukcja programistyczna posiadająca trzy podstawowe atrybuty: symboliczną nazwę, miejsce przechowywania i wartość.
Dla begginerów: https://www.w3schools.com/python/
https://wiki.robisz.to/books/python (tam są pojęcia wyjaśnione w oparciu o 'słoiki')😄
Deklaracja zmiennych
Zmienne deklarujemy wg. poniższego schematu:
nazwa_zmiennej = zawartość
Znak równości służy do przypisania nazwy (którą umieszczamy po lewej stronie znaku) do jakiegoś obiektu (który umieszczamy po prawej stronie znaku).
Znak równości służy do przypisania wartości =.
Do porównywania używamy dwóch znaków równości ==.
Tworząc nazwę TRZEBA przestrzegać kilku zasad:
- nazwa nie może zawierać większości znaków specjalnych (w tym spacji - można zastąpić ją _ );
- nie może składać się z samych liczb, ani zaczynać od nich (liczba może być w środku nazwy);
- nie może zawierać polskich znaków;
- raczej MAŁE litery (Dużymi literami piszemy nazwy klas, lub stałe).
Dobrą praktyką jest:
- używanie jedynie małych liter
- jeśli chcemy aby nazwa składała się z kilku słów oddzielamy je “podłogą” (np. moje_miasto)
- nadawanie nazw, które dobrze oddają zawartość (nie powinny jednak być przesadnie długie).
Typy zmiennych
- tekstowe str (string) - łańcuch znaków: tekst w
' 'albo" ".
imie = "Natalia"
powitanie = "Cześć"
print(type(imie)) # <class 'str'>- liczby całkowite int (integer) - służą do przechowywania liczb całkowitych (bez części ułamkowej). Mogą być dodatnie, ujemne.
wiek = 25
rok = 2025
temperatura = -10
print(type(wiek)) # <class 'int'>- Liczby zmiennoprzecinkowe float - liczby z częścią ułamkową (dziesiętną). W Pythonie używamy kropki, nie przecinka.
pi = 3.14159
waga = 68.5
print(type(pi)) # <class 'float'>
- Wartości logiczne bool - mają tylko dwie wartości: True (prawda; 1) lub False (fałsz; 0). Używane w warunkach (
if,while).
czy_student = True
czy_pracownik = False
print(type(czy_student)) # <class 'bool'>Operacje na liczbach
a = 10
b = 3
print(a + b) # dodawanie → 13
print(a - b) # odejmowanie → 7
print(a * b) # mnożenie → 30
print(a / b) # dzielenie (wynik float) → 3.3333...
print(a // b) # dzielenie całkowite → 3
print(a % b) # reszta z dzielenia → 1
print(a ** b) # potęgowanie (10^3) → 1000Typy zmiennych a operacje:
- int i float - wszystkie możliwe
- bool - dodawanie, odejmowanie i mnożenie
- str - dodawanie "kot" + "pies" = "kotpies"; "kot" + " " + "pies"=" kot pies"; mnożenie tak, ale przez liczbę.
Poznane funkcje
Input - służy do umożliwienia użytkownikowi wprowadzenia jakiejś zawartości.
- wszystko co zostanie wprowadzone w ten sposób będzie traktowane jako str,
imię = input("Podaj imię: ")- jeśli chcemy wprowadzić z wykorzystaniem input liczbę musimy dokonać konwersji z tekstu na np. liczbę całkowitą, lub zmiennoprzecinkową
wzrost = float(input("Podaj wzrost w metrach: "))Print - służy do wypisywania informacji na ekran.
x = 10
y = 20
print("Wartości:", x, y)Wyświetli: Wartości: 10 20
Co to są f-stringi?
To sposób na wstawianie zmiennych do tekstu w Pythonie.
Zamiast sklejać napisy i liczby, możesz użyć f"..." i wstawić zmienną w {}.
# Napisz program, który: poprosi użytkownika o imię i wiek, wypisze zdanie w stylu:„Mam na imię Kasia i mam 30 lat.”
imie = input("Podaj swoje imię: ")
wiek = int(input("Podaj wiek: "))
print(f"Mam na imię {imie} i mam {wiek} lat")Bez f-stringów byłoby tak:
print("Mam na imię " + imie + " i mam " + str(wiek) + " lat.")Formatowanie liczb - liczba miejsc po przecinku.
pi = 3.14159
print(f"Pi ≈ {pi:.2f}")