Typy danych w Pythonie – int, float, listy, słowniki i None w praktyce

Poznaj najważniejsze typy danych w Pythonie: int, float, listy, słowniki i None. Praktyczne przykłady i różnice między typami. Idealne dla początkujących!
27 stycznia 2026
blog
Poziom: Podstawowy

Artykuł przeznaczony dla osób początkujących uczących się Pythona oraz tych, którzy chcą uporządkować wiedzę o podstawowych typach danych.

Z tego artykułu dowiesz się

  • Jakie są podstawowe typy danych w Pythonie i do czego służą?
  • Jak wykonywać typowe operacje na liczbach int i float oraz na listach i słownikach?
  • Czym jest wartość None i jak poprawnie jej używać w warunkach oraz funkcjach?

Wprowadzenie do typów danych w Pythonie

Typy danych to podstawowy element każdego języka programowania, a Python oferuje bogaty zestaw wbudowanych typów, które pozwalają na reprezentowanie różnych rodzajów informacji. Dzięki nim możliwe jest nie tylko przechowywanie danych, ale również wykonywanie na nich operacji, tworzenie złożonych struktur oraz kontrolowanie logiki działania programów.

W Pythonie każda zmienna ma swój typ danych, który definiuje, jakie wartości może przyjmować oraz jakie operacje są na niej dozwolone. Do najczęściej używanych należą:

  • int – typ całkowity, używany do reprezentacji liczb całkowitych, takich jak 3, -15 czy 0.
  • float – typ zmiennoprzecinkowy, służący do przedstawiania liczb rzeczywistych, np. 3.14 czy -0.001.
  • list – lista, czyli uporządkowana kolekcja elementów, które mogą być różnych typów.
  • dict – słownik, który przechowuje dane w formacie klucz-wartość, umożliwiając szybki dostęp do informacji.
  • None – specjalna wartość reprezentująca brak wartości lub pusty wynik.

Znajomość typów danych w Pythonie jest niezbędna do efektywnego programowania. Pozwala ona nie tylko na lepszą organizację danych, ale także na unikanie błędów i pisanie bardziej czytelnego oraz elastycznego kodu.

Typ całkowity (int) – podstawy i zastosowania

Typ int w Pythonie reprezentuje liczby całkowite, zarówno dodatnie, jak i ujemne, bez części ułamkowej. Jest jednym z najbardziej podstawowych i najczęściej używanych typów danych w języku Python. Inty wykorzystywane są do przechowywania wartości takich jak wiek, ilość elementów w kolekcji, licznik iteracji w pętli czy identyfikatory.

Python automatycznie rozpoznaje liczby całkowite, gdy zapisujemy je jako cyfry bez przecinka dziesiętnego. Typ ten obsługuje liczby dowolnej wielkości, ograniczone jedynie dostępną pamięcią, co oznacza, że można bezpiecznie pracować nawet z bardzo dużymi wartościami, bez konieczności ręcznego deklarowania rozmiaru zmiennej.

Typowe zastosowania typu int obejmują:

  • Operacje arytmetyczne – dodawanie, odejmowanie, mnożenie i dzielenie liczb całkowitych.
  • Konstrukcje kontrolne – np. warunki i pętle, gdzie liczby całkowite pełnią rolę liczników lub wartości progowych.
  • Indeksowanie – używanie liczb całkowitych do wskazywania pozycji elementów w listach lub innych kolekcjach sekwencyjnych.
  • Logika programów – np. ustawianie flag, kodowanie stanów lub wykorzystywanie wartości liczbowych do zarządzania przepływem programu.

Warto również zaznaczyć, że Python umożliwia konwersję innych typów danych na int, o ile mają one odpowiednią strukturę, co czyni ten typ bardzo elastycznym i przydatnym w różnorodnych kontekstach programistycznych. Temat tego artykułu pojawia się w niemal każdej sesji szkoleniowej Cognity – czasem w formie pytania, czasem w formie frustracji.

Typ zmiennoprzecinkowy (float) – operacje i przykłady

W Pythonie typ float reprezentuje liczby rzeczywiste, czyli takie, które mogą zawierać część dziesiętną. Jest to odmienny typ niż int, który przechowuje wyłącznie liczby całkowite. Typ float znajduje szerokie zastosowanie w obliczeniach matematycznych, przetwarzaniu danych naukowych, finansowych oraz w grafice komputerowej, gdzie dokładność do miejsc dziesiętnych ma kluczowe znaczenie.

Najczęściej spotykane operacje na wartościach typu float obejmują:

  • dodawanie, odejmowanie, mnożenie i dzielenie,
  • zaokrąglanie przy użyciu funkcji round(),
  • porównywanie z innymi liczbami, w tym z wartościami całkowitymi,
  • konwersję z i do innych typów liczbowych (np. intfloat).

Poniżej znajdują się przykłady ilustrujące podstawowe użycie wartości zmiennoprzecinkowych:

# Przypisanie wartości float
cena = 19.99
podatek = 0.23

# Operacje arytmetyczne
cena_brutto = cena * (1 + podatek)
print(cena_brutto)  # wynik: 24.5777

# Zaokrąglanie
print(round(cena_brutto, 2))  # wynik: 24.58

# Porównanie float i int
print(cena_brutto > 20)  # wynik: True

Warto pamiętać, że w związku z reprezentacją wartości zmiennoprzecinkowych w pamięci komputera, operacje na typie float mogą czasem prowadzić do drobnych niedokładności numerycznych. Z tego względu często stosuje się specjalne metody porównywania wartości lub biblioteki wspomagające pracę z liczbami zmiennoprzecinkowymi.

Typ Przykład Zastosowanie
int 42 Liczby całkowite, np. liczba osób
float 3.14 Liczby dziesiętne, np. współczynniki, ceny

Stosowanie typu float jest nieodzowne wszędzie tam, gdzie wymagane jest operowanie na wartościach z miejscami po przecinku. Dzięki temu Python umożliwia precyzyjne modelowanie i analizę danych liczbowych w codziennej pracy programisty. Jeśli chcesz pogłębić swoją wiedzę i nauczyć się praktycznie wykorzystywać Pythona w analizie danych, sprawdź nasz Kurs Python - praktyczne wykorzystanie Pythona do analizy danych i automatyzacji.

Listy – przechowywanie i manipulacja sekwencjami danych

Listy to jeden z najczęściej używanych typów danych w Pythonie, służący do przechowywania uporządkowanych kolekcji elementów. Umożliwiają one przechowywanie wielu wartości w jednej zmiennej i oferują elastyczne możliwości ich modyfikacji. W przeciwieństwie do innych struktur danych, listy są mutowalne, co oznacza, że ich zawartość może być zmieniana po utworzeniu.

Listy można tworzyć za pomocą nawiasów kwadratowych [], a ich elementy mogą należeć do różnych typów danych, w tym także do innych list.

# Przykładowa lista
przykladowa_lista = [1, 3.14, 'Python', True, [5, 6]]

Podstawowe cechy list w Pythonie:

  • Zachowują kolejność dodawania elementów (są uporządkowane)
  • Pozwalają na dostęp do elementów przez indeksy (zarówno dodatnie, jak i ujemne)
  • Umożliwiają modyfikację, dodawanie i usuwanie elementów
  • Mogą zawierać elementy różnych typów

Poniższa tabela pokazuje kilka podstawowych operacji dostępnych dla list:

Operacja Opis Przykład
Dodawanie elementu Dodaje nowy element na końcu listy lista.append(10)
Usuwanie elementu Usuwa pierwsze wystąpienie podanej wartości lista.remove('Python')
Dostęp przez indeks Pobiera element o danym indeksie lista[0] zwróci 1
Wycinanie (slicing) Tworzy nową listę z wybranego zakresu lista[1:3]

Dzięki swojej wszechstronności, listy są powszechnie wykorzystywane w praktyce do przechowywania zbiorów danych, kolejek zadań, wyników obliczeń czy jako tymczasowe struktury pomocnicze w algorytmach. Na szkoleniach Cognity pokazujemy, jak poradzić sobie z tym zagadnieniem krok po kroku – poniżej przedstawiamy skrót tych metod.

Słowniki – struktury danych oparte na kluczach

W Pythonie słowniki (dict) to elastyczne i potężne struktury danych, które pozwalają na przechowywanie informacji w postaci par klucz – wartość. W odróżnieniu od list, które wykorzystują indeksy liczbowe do dostępu do elementów, słowniki używają kluczy – mogą to być np. napisy, liczby lub krotki (typu niemutowalnego). Dzięki temu doskonale sprawdzają się tam, gdzie potrzebny jest szybki dostęp do danych po nazwie lub identyfikatorze.

Typowe zastosowania słowników obejmują przechowywanie danych konfiguracyjnych, reprezentowanie obiektów (np. użytkownika: imię, nazwisko, wiek), czy przetwarzanie danych w formacie JSON.

uzytkownik = {
    "imie": "Anna",
    "nazwisko": "Kowalska",
    "wiek": 30
}

print(uzytkownik["imie"])  # wynik: Anna

Podstawowe cechy słowników:

  • Elementy są przechowywane jako pary klucz: wartość.
  • Klucze muszą być unikalne i niemutowalne (np. str, int, tuple).
  • Wartości mogą być dowolnego typu, w tym innymi słownikami lub listami.
  • Dostęp do wartości odbywa się bezpośrednio przez klucz, co zapewnia dużą szybkość działania.

Dla porównania z listą:

Cecha Lista Słownik
Dostęp do danych Za pomocą indeksu liczbowego Za pomocą klucza
Kolejność Zachowana (od Python 3.7) Zachowana (od Python 3.7)
Typy kluczy Nie dotyczy Niemutowalne (np. string, liczba)
Typowe użycie Sekwencje danych Mapowanie danych, np. nazwa do wartości

Podsumowując, słowniki są niezastąpione, gdy potrzebujemy przechowywać i szybko odwoływać się do danych powiązanych z unikalnymi kluczami. Ich przejrzysta składnia i wydajność czynią je jednym z najważniejszych typów danych w Pythonie. Jeśli chcesz pogłębić swoją wiedzę w praktyce, sprawdź Kurs Python – kompleksowa analiza danych w Pythonie z wykorzystaniem bibliotek Pandas, NumPy, Matplotlib i Scikit-Learn.

Wartość None – znaczenie i typowe przypadki użycia

W Pythonie None to specjalna wartość reprezentująca brak wartości lub pustkę. Nie należy jej mylić z wartością zero (0), pustym ciągiem ('') czy pustą listą ([]) — None to odrębny typ danych o nazwie NoneType.

Wartość None jest często stosowana w następujących sytuacjach:

  • Brak zwracanej wartości w funkcji – jeśli funkcja nie posiada instrukcji return, domyślnie zwraca None.
  • Wartość domyślna argumentu – przy definiowaniu funkcji, by wskazać, że argument jest opcjonalny.
  • Początkowa inicjalizacja zmiennej – gdy zmienna ma zostać przypisana później, ale musi istnieć wcześniej.
  • Sprawdzenie warunku istnienia – w logice warunkowej do rozpoznawania, czy wartość została ustawiona.

Przykład użycia None jako domyślnej wartości argumentu:

def powitanie(imie=None):
    if imie is None:
        print("Cześć, nieznajomy!")
    else:
        print(f"Cześć, {imie}!")

powitanie()        # Cześć, nieznajomy!
powitanie("Anna")  # Cześć, Anna!

Warto podkreślić, że porównania z None powinny być wykonywane za pomocą operatora is, a nie ==. Dzięki temu unikamy niejednoznaczności i poprawnie identyfikujemy typ NoneType.

Wyrażenie Opis
x is None Sprawdza, czy zmienna x ma wartość None
x == None Nie zalecane – może działać poprawnie, ale zależy od definicji operatora ==

Podsumowując, None pełni w Pythonie rolę wskaźnika na brak wartości i jest często wykorzystywany w programowaniu defensywnym, kontroli przepływu i konstrukcji funkcji.

Różnice i porównania między typami danych

Python oferuje różnorodne typy danych, z których każdy służy do reprezentowania określonego rodzaju informacji. Ich właściwe zrozumienie pozwala na efektywne tworzenie kodu i lepsze zarządzanie danymi.

  • int to typ przechowujący liczby całkowite i jest używany do obliczeń matematycznych, które nie wymagają wartości ułamkowych.
  • float reprezentuje liczby zmiennoprzecinkowe, a więc te posiadające część dziesiętną — przydatne tam, gdzie precyzja ma znaczenie, np. w obliczeniach finansowych.
  • list pozwala na tworzenie uporządkowanej kolekcji elementów, które mogą być dowolnego typu. Listy są dynamiczne, co oznacza, że można je łatwo modyfikować.
  • dict, czyli słownik, przechowuje dane w parach klucz-wartość, umożliwiając szybki dostęp do informacji na podstawie unikalnych kluczy.
  • None to specjalna wartość oznaczająca brak danych lub pustą referencję. Często wykorzystywana jest do inicjalizacji zmiennych lub jako domyślna wartość argumentów funkcji.

Każdy z tych typów odgrywa istotną rolę w codziennym programowaniu w Pythonie i ich znajomość pozwala pisać bardziej czytelny, elastyczny i efektywny kod.

Podsumowanie i najlepsze praktyki

Typy danych w Pythonie stanowią fundament pracy z tym językiem i odgrywają kluczową rolę w efektywnym przetwarzaniu informacji. Każdy z omówionych typów ma swoje specyficzne zastosowania i charakterystyki, które warto znać, by pisać czytelny i wydajny kod.

  • int służy do przechowywania liczb całkowitych i sprawdza się w operacjach matematycznych, gdzie nie są wymagane wartości dziesiętne.
  • float reprezentuje liczby zmiennoprzecinkowe, używane tam, gdzie istotna jest precyzja dziesiętna, np. w obliczeniach finansowych lub naukowych.
  • listy przechowują uporządkowane kolekcje danych, umożliwiając łatwe dodawanie, usuwanie oraz dostęp do elementów przez indeks.
  • słowniki to struktury danych oparte na parach klucz-wartość, idealne do szybkiego wyszukiwania informacji po unikalnych identyfikatorach.
  • None reprezentuje brak wartości i często wykorzystywane jest do inicjalizacji zmiennych lub sygnalizacji, że dana wartość jeszcze nie została przypisana.

Znajomość tych typów danych oraz umiejętność ich właściwego użycia pozwala pisać bardziej przejrzysty, wydajny i mniej podatny na błędy kod. Dobrą praktyką jest świadome dobieranie typu danych do konkretnego problemu oraz unikanie nadmiernego komplikowania struktur tam, gdzie proste rozwiązania są wystarczające. Podczas szkoleń Cognity pogłębiamy te zagadnienia w oparciu o konkretne przykłady z pracy uczestników.

icon

Formularz kontaktowyContact form

Imię *Name
NazwiskoSurname
Adres e-mail *E-mail address
Telefon *Phone number
UwagiComments