Lekcja 3 – Podstawowe typy danych

Kurs: Darmowy kurs Python dla początkujących
Lekcja 3: Podstawowe typy danych

⇓ spis treści ⇓


Liczby: int, float

Python obsługuje różne typy danych numerycznych, które pozwalają na wykonywanie obliczeń matematycznych i operacji na liczbach. Dwa podstawowe typy liczbowe w Pythonie to:

  • int: Liczby całkowite, takie jak 1, -10, 0.
  • float: Liczby zmiennoprzecinkowe (ułamkowe), takie jak 3.14, -0.5, 2.0.
1. Liczby całkowite (int)

Typ int przechowuje liczby całkowite, które nie mają części ułamkowej. Możesz używać liczb całkowitych do wykonywania podstawowych operacji matematycznych, takich jak dodawanie, odejmowanie, mnożenie czy dzielenie. Oto przykład:

# Przykłady liczb całkowitych
x = 10
y = -3
print(x + y)  # Wynik: 7
print(x * 2)  # Wynik: 20

W Pythonie nie ma ograniczeń co do wielkości liczby całkowitej – można pracować nawet z bardzo dużymi liczbami:

# Bardzo duże liczby całkowite
big_number = 123456789012345678901234567890
print(big_number)
2. Liczby zmiennoprzecinkowe (float)

Typ float przechowuje liczby, które mają część ułamkową. Są one często używane w obliczeniach wymagających większej precyzji, takich jak operacje na liczbach dziesiętnych. Przykłady:

# Przykłady liczb zmiennoprzecinkowych
a = 3.14
b = -0.5
print(a + b)  # Wynik: 2.64
print(a * 2)  # Wynik: 6.28

Liczby zmiennoprzecinkowe mogą być również zapisywane w notacji wykładniczej:

# Notacja wykładnicza
c = 1.2e3  # Odpowiada 1.2 * 10^3, czyli 1200
d = 5e-4   # Odpowiada 5 * 10^-4, czyli 0.0005
print(c)
print(d)
3. Operacje matematyczne

Python obsługuje wiele standardowych operacji matematycznych dla obu typów liczb:

  • + – Dodawanie
  • - – Odejmowanie
  • * – Mnożenie
  • / – Dzielenie
  • // – Dzielenie całkowite (wynik zaokrąglany w dół do najbliższej liczby całkowitej)
  • % – Reszta z dzielenia
  • ** – Potęgowanie

Przykłady operacji matematycznych:

# Operacje matematyczne
x = 10
y = 3
print(x + y)   # Dodawanie: 13
print(x - y)   # Odejmowanie: 7
print(x * y)   # Mnożenie: 30
print(x / y)   # Dzielenie: 3.3333...
print(x // y)  # Dzielenie całkowite: 3
print(x % y)   # Reszta z dzielenia: 1
print(x ** y)  # Potęgowanie: 1000
4. Konwersja między int a float

Python umożliwia łatwą konwersję między typami int i float. Można to zrobić za pomocą funkcji int() i float():

# Konwersja między typami int i float
x = 10        # Liczba całkowita
y = 3.14      # Liczba zmiennoprzecinkowa

# Konwersja int -> float
z = float(x)
print(z)  # Wynik: 10.0

# Konwersja float -> int
w = int(y)
print(w)  # Wynik: 3 (część ułamkowa zostaje obcięta)
5. Przykłady praktyczne

Oto kilka praktycznych przykładów wykorzystania liczb w Pythonie:

# Obliczanie pola koła
promien = 5
pi = 3.14159
pole = pi * (promien ** 2)
print(f"Pole koła o promieniu {promien} wynosi: {pole}")

# Obliczanie miesięcznych wydatków
wydatki = [1200.50, 800, 450.25, 300]
suma = sum(wydatki)
print(f"Całkowite wydatki w miesiącu: {suma}")

W Pythonie liczby całkowite i zmiennoprzecinkowe są podstawą większości operacji matematycznych, dlatego ważne jest, aby dobrze je zrozumieć. W kolejnych sekcjach dowiesz się więcej o innych typach danych, takich jak ciągi znaków i typ logiczny.

Ciągi znaków (stringi)

Ciągi znaków, znane jako stringi, są jednym z podstawowych typów danych w Pythonie. String to sekwencja znaków, która może zawierać litery, cyfry, symbole i spacje. Stringi są używane do przechowywania i manipulowania tekstem w programach.

1. Tworzenie stringów

Stringi w Pythonie można tworzyć, umieszczając tekst w pojedynczych (' ') lub podwójnych cudzysłowach (" "). Obie formy działają identycznie:

# Tworzenie stringów
tekst1 = 'To jest string'
tekst2 = "To również jest string"
print(tekst1)
print(tekst2)

Jeśli string zawiera cudzysłów, możesz użyć drugiego rodzaju cudzysłowów, aby uniknąć błędów składniowych:

# Użycie cudzysłowów wewnątrz stringa
tekst = "To jest przykład 'stringa' z cudzysłowami."
print(tekst)

Możesz także używać znaków specjalnych, takich jak \' lub \", aby wstawić cudzysłowy do tekstu:

# Użycie znaków specjalnych
tekst = 'To jest przykład z \"cudzysłowami\" wewnątrz stringa.'
print(tekst)
2. Wieloliniowe stringi

Python pozwala na tworzenie stringów wieloliniowych za pomocą potrójnych cudzysłowów (''' lub """):

# String wieloliniowy
tekst = """To jest
string wieloliniowy.
Każda linia jest traktowana jako część tekstu."""
print(tekst)
3. Operacje na stringach

Python oferuje wiele przydatnych operacji, które można wykonywać na stringach:

  • Konkatenacja (łączenie): Możesz łączyć stringi za pomocą operatora +:
# Konkatenacja stringów
tekst1 = "Witaj, "
tekst2 = "świecie!"
polaczony = tekst1 + tekst2
print(polaczony)
  • Powielanie: Możesz powielać stringi za pomocą operatora *:
# Powielanie stringa
tekst = "Echo! "
print(tekst * 3)
  • Długość stringa: Aby sprawdzić liczbę znaków w stringu, użyj funkcji len():
# Długość stringa
tekst = "Python"
print(len(tekst))  # Wynik: 6
4. Indeksowanie i wycinanie

Stringi w Pythonie są indeksowane, co oznacza, że każdy znak ma przypisany numer (indeks), zaczynając od 0. Możesz uzyskać dostęp do konkretnego znaku, używając indeksu:

# Indeksowanie stringa
tekst = "Python"
print(tekst[0])  # Pierwszy znak: P
print(tekst[5])  # Szósty znak: n

Możesz również wycinać fragmenty stringa, korzystając z tzw. slice:

# Wycinanie fragmentów stringa
tekst = "Python"
print(tekst[0:3])  # Wynik: Pyt (od indeksu 0 do 2)
print(tekst[2:])   # Wynik: thon (od indeksu 2 do końca)
print(tekst[:4])   # Wynik: Pyth (od początku do indeksu 3)
5. Metody stringów

Python oferuje wiele wbudowanych metod do pracy ze stringami:

  • .lower() – Zmienia wszystkie litery na małe:
tekst = "PYTHON"
print(tekst.lower())  # Wynik: python
  • .upper() – Zmienia wszystkie litery na wielkie:
tekst = "python"
print(tekst.upper())  # Wynik: PYTHON
  • .strip() – Usuwa białe znaki z początku i końca stringa:
tekst = "  Python  "
print(tekst.strip())  # Wynik: Python
  • .replace() – Zamienia określony fragment stringa na inny:
tekst = "Witaj, świecie!"
print(tekst.replace("świecie", "Pythonie"))  # Wynik: Witaj, Pythonie!
  • .find() – Znajduje indeks pierwszego wystąpienia określonego tekstu:
tekst = "Witaj, świecie!"
print(tekst.find("świecie"))  # Wynik: 7
6. Stringi jako niemodyfikowalne obiekty

Stringi w Pythonie są niemodyfikowalne (ang. immutable), co oznacza, że po ich utworzeniu nie można zmieniać ich zawartości. Na przykład, poniższy kod spowoduje błąd:

tekst = "Python"
tekst[0] = "J"  # To spowoduje błąd

Aby zmodyfikować string, musisz utworzyć nowy string na podstawie istniejącego:

tekst = "Python"
tekst = "J" + tekst[1:]
print(tekst)  # Wynik: Jython

Stringi w Pythonie są niezwykle elastyczne i potężne. W kolejnych sekcjach dowiesz się, jak używać ich w praktycznych projektach i jak współpracują z innymi typami danych.

Typ logiczny (boolean)

Typ logiczny, znany jako boolean, to jeden z podstawowych typów danych w Pythonie. Boolean reprezentuje wartość logiczną i przyjmuje jedną z dwóch możliwych wartości: True (prawda) lub False (fałsz). Jest niezwykle istotny w programowaniu, ponieważ jest podstawą instrukcji warunkowych, pętli i wielu innych operacji.

1. Tworzenie wartości logicznych

W Pythonie możesz przypisać wartości logiczne True lub False do zmiennych:

# Przypisanie wartości logicznych
prawda = True
falsz = False
print(prawda)  # Wynik: True
print(falsz)   # Wynik: False

Warto zauważyć, że True i False w Pythonie zaczynają się od wielkiej litery. Napisanie ich małą literą spowoduje błąd składniowy.

2. Typ logiczny jako wynik porównań

Typ logiczny często jest wynikiem operacji porównania. Python oferuje różne operatory porównawcze, które zwracają wartość True lub False:

  • == – Równość
  • != – Różność
  • > – Większe niż
  • >= – Większe lub równe
  • < – Mniejsze niż
  • <= – Mniejsze lub równe

Przykłady:

# Operatory porównania
a = 10
b = 5

print(a == b)  # Wynik: False
print(a != b)  # Wynik: True
print(a > b)   # Wynik: True
print(a <= b)  # Wynik: False
3. Operatory logiczne

Python oferuje operatory logiczne, które pozwalają łączyć wartości typu boolean:

  • and – Zwraca True, jeśli obie wartości są prawdziwe.
  • or – Zwraca True, jeśli przynajmniej jedna wartość jest prawdziwa.
  • not – Zwraca odwrotność wartości logicznej.

Przykłady:

# Operatory logiczne
x = True
y = False

print(x and y)  # Wynik: False
print(x or y)   # Wynik: True
print(not x)    # Wynik: False
4. Konwersja na typ logiczny

W Pythonie możemy konwertować inne typy danych na typ logiczny za pomocą funkcji bool(). Poniższe wartości są traktowane jako False:

  • 0 (dla liczb)
  • Pusty string ""
  • Pusty obiekt, taki jak lista, krotka, słownik, zbiór
  • Wartość None

Wszystkie inne wartości są traktowane jako True. Przykłady:

# Konwersja na typ logiczny
print(bool(0))        # Wynik: False
print(bool(1))        # Wynik: True
print(bool(""))       # Wynik: False
print(bool("Python")) # Wynik: True
print(bool([]))       # Wynik: False
print(bool([1, 2, 3]))# Wynik: True
5. Typ boolean w praktyce

Wartości logiczne są często używane w instrukcjach warunkowych, aby kontrolować przepływ programu. Na przykład:

# Przykład użycia boolean w instrukcji warunkowej
wiek = 18
czy_pelnoletni = wiek >= 18

if czy_pelnoletni:
    print("Osoba jest pełnoletnia.")
else:
    print("Osoba nie jest pełnoletnia.")

W tym przykładzie zmienna czy_pelnoletni przyjmuje wartość True lub False w zależności od wyniku porównania. Na tej podstawie program decyduje, który blok kodu wykonać.

6. Boolean jako liczba

W Pythonie typ logiczny jest podtypem typu całkowitego (int), co oznacza, że wartości True i False są wewnętrznie reprezentowane jako 1 i 0. Możesz je używać w operacjach matematycznych:

# Boolean jako liczba
x = True
y = False

print(x + y)  # Wynik: 1 (1 + 0)
print(x * 5)  # Wynik: 5 (1 * 5)

Wartość logiczna True jest równa 1, a False jest równe 0. Możesz to wykorzystać w różnych obliczeniach.

Typ logiczny w Pythonie jest kluczowy do tworzenia dynamicznych programów, które reagują na różne warunki. W kolejnych lekcjach dowiesz się, jak wykorzystać wartości logiczne w bardziej zaawansowanych konstrukcjach.

Funkcja type

Funkcja type jest jednym z podstawowych narzędzi w Pythonie, które pozwala sprawdzić, jakiego typu jest dana zmienna lub wartość. Jest to szczególnie przydatne w nauce programowania, gdy chcemy zrozumieć, jakie dane przechowuje zmienna lub jaki typ zwraca konkretna operacja.

1. Jak używać funkcji type?

Aby użyć funkcji type, wystarczy przekazać do niej zmienną lub wartość, której typ chcemy sprawdzić. Oto kilka przykładów:

# Przykłady użycia funkcji type
x = 10
y = 3.14
z = "Python"

print(type(x))  # Wynik: <class 'int'>
print(type(y))  # Wynik: <class 'float'>
print(type(z))  # Wynik: <class 'str'>

W powyższym kodzie funkcja type zwraca informacje o typie danych dla każdej zmiennej: int dla liczb całkowitych, float dla liczb zmiennoprzecinkowych oraz str dla ciągów znaków.

2. Typy danych w Pythonie

Python obsługuje wiele typów danych, a funkcja type pozwala łatwo je rozpoznać. Oto niektóre z najczęściej używanych typów danych:

  • int – liczby całkowite, np. 10, -5.
  • float – liczby zmiennoprzecinkowe, np. 3.14, -0.5.
  • str – ciągi znaków (stringi), np. "Python".
  • bool – wartości logiczne, np. True, False.
  • list – listy, np. [1, 2, 3].
  • tuple – krotki, np. (1, 2, 3).
  • dict – słowniki, np. {"klucz": "wartość"}.
  • set – zbiory, np. {1, 2, 3}.

Funkcja type zwraca odpowiednią klasę dla każdego z tych typów danych.

3. Sprawdzanie typu wartości zwracanej przez operacje

Funkcja type może być również używana do sprawdzania typu wartości zwracanej przez różne operacje. Oto przykład:

# Sprawdzanie typu wyników operacji
x = 10
y = 3.0
z = x + y

print(type(z))  # Wynik: <class 'float'> (liczba całkowita + zmiennoprzecinkowa daje float)

W tym przykładzie wynik operacji x + y jest typu float, ponieważ jedna z wartości (y) jest liczbą zmiennoprzecinkową.

4. Funkcja type w połączeniu z instrukcjami warunkowymi

Możesz używać funkcji type w instrukcjach warunkowych, aby wykonywać różne działania w zależności od typu danych. Na przykład:

# Wykorzystanie funkcji type w warunkach
x = "Python"

if type(x) == str:
    print("To jest string!")
elif type(x) == int:
    print("To jest liczba całkowita!")
else:
    print("Nieznany typ danych.")

W tym kodzie program sprawdza typ zmiennej x i wykonuje odpowiednią akcję w zależności od jej typu.

5. Sprawdzanie instancji klasy za pomocą isinstance

Chociaż funkcja type jest bardzo przydatna, w niektórych przypadkach lepiej używać funkcji isinstance, która pozwala sprawdzić, czy dana wartość jest instancją określonego typu lub klasy. Na przykład:

# Użycie isinstance
x = [1, 2, 3]

if isinstance(x, list):
    print("To jest lista!")

Funkcja isinstance działa podobnie jak type, ale jest bardziej elastyczna w przypadku dziedziczenia klas.

6. Przykłady praktyczne

Oto kilka przykładów, jak używać funkcji type w praktyce:

# Sprawdzanie typu zmiennych
dane = [10, 3.14, "Python", True]

for element in dane:
    print(f"Element: {element}, Typ: {type(element)}")

Wynik działania powyższego kodu:

Element: 10, Typ: <class 'int'>
Element: 3.14, Typ: <class 'float'>
Element: Python, Typ: <class 'str'>
Element: True, Typ: <class 'bool'>

Funkcja type jest narzędziem, które pozwala lepiej zrozumieć dane w Pythonie i jest niezastąpione podczas nauki programowania. Dzięki niej możemy łatwo sprawdzić typ zmiennej, zrozumieć wyniki operacji i tworzyć bardziej dynamiczne programy.

Następna lekcja ==> Zmienne i operatory



Spis Treści - darmowy kurs Python dla początkujących


Lekcja 1: Wprowadzenie do programowania
- Co to jest programowanie?
- Dlaczego warto uczyć się Pythona?
- Instalacja Python i wprowadzenie do edytorów (IDLE, VS Code).
Lekcja 2: Pierwszy program w Pythonie
- Składnia Pythona.
- Wyświetlanie tekstu (funkcja print).
- Komentarze i ich znaczenie.
Lekcja 3: Podstawowe typy danych
- Liczby: int, float.
- Ciągi znaków (stringi).
- Typ logiczny (boolean).
- Funkcja type.
Lekcja 4: Zmienne i operatory
- Deklaracja i przypisywanie zmiennych.
- Operatory arytmetyczne, porównania, logiczne.
Lekcja 5: Listy i krotki
- Tworzenie list i krotek.
- Indeksowanie, dodawanie, usuwanie elementów.
- Operacje na listach.
Lekcja 6: Słowniki i zbiory
- Tworzenie i operacje na słownikach.
- Iteracja po słownikach.
- Zbiory i ich zastosowania.
Lekcja 7: Instrukcje warunkowe
- Instrukcje if, elif, else.
- Operatory logiczne w praktyce.
Lekcja 8: Pętle
- Pętla for i while.
- Instrukcje break, continue, else w pętlach.
Lekcja 9: Funkcje
- Tworzenie i wywoływanie funkcji.
- Argumenty i wartości domyślne.
- Funkcje anonimowe (lambda).
Lekcja 10: Praca z plikami
- Otwieranie, czytanie i zapisywanie plików.
- Obsługa błędów przy pracy z plikami.
Lekcja 11: Podstawy programowania obiektowego
- Klasy i obiekty.
- Atrybuty i metody.
- Prosty projekt: Zarządzanie listą zadań.
Lekcja 12: Tworzenie prostego kalkulatora
- Łączenie funkcji i warunków.
- Obsługa błędów (try-except).
Lekcja 13: Zarządzanie plikami tekstowymi
- Program do przechowywania i wyszukiwania notatek w plikach.
Lekcja 14: Prosta gra tekstowa w Python
- Wprowadzenie do pętli i logiki gry.
- Interaktywna gra konsolowa, np. zgadywanie liczby.

Jeśli chciałbyś być poinformowany o następnych kursach to zapisz się do naszego newslettera: