Podstawowe struktury danych w Pythonie – zestawy

Struktury Danych – Zestaw (ang. set)

Definicja

W Pythonie zestaw (ang. set) to wbudowany typ danych, który przechowuje nieuporządkowane i unikalne elementy

Innymi słowy, zestaw nie pozwala na przechowywanie duplikatów wartości. Jest to jedna z czterech wbudowanych struktur danych służących do przechowywania kolekcji danych, obok list, krotek i słowników. 

Cechy zestawu

  • Nieuporządkowany: Elementy w zestawie nie są przechowywane w jakiejś konkretnej kolejności.
  • Unikalny: Każdy element w zestawie musi być unikalny. Duplikaty są ignorowane.
  • Zmienny: Zestawy mogą być modyfikowane, czyli można dodawać lub usuwać elementy po utworzeniu. 
  • Tworzenie: można je tworzyć, wykorzystując nawiasy okrągłe, nawiasy klamrowe, konstruktor set().

Podstawowe metody

MetodaOpisMutuje oryginał?Zwraca
s.add(x)Dodaje x✔️None
s.update(iter)Suma z iterowalnym✔️None
s.remove(x)Usuwa x, KeyError gdy brak✔️None
s.discard(x)Usuwa, jeśli jest✔️None
s.pop()Usuwa i zwraca losowy element✔️Usunięty element
s.union(t)Zwraca nowy zbiór – sumaNowy set
s.intersection(t)WspólneNowy set
s.difference(t) lub s – tRóżnicaNowy set

Kiedy używać?

SytuacjaDlaczego zestaw?
Musisz szybko testować przynależność (x in s)Operacja O(1).
Usuwasz duplikaty z listulist(set(my_list)) daje unikalne elementy.
Realizujesz logikę „kto obserwuje kogo”Wspólne obserwacje to followers_a & followers_b.

Czas na praktykę

To koniec kazania o strukturach danych. Zajrzyj teraz do ostatniego notatnika Colab w tej serii, gdzie znajdziesz dokładne wytłumaczenie wszystkich podstawowych (i nieco bardziej zaawansowanych) metod związanych z zestawami.
Możesz skopiować lub pobrać notatnik, by móc uruchomić go dla siebie i pobawić się różnymi metodami.

Na końcu notatnika znajdziesz 3 zadania.
Zrób je, a jeśli będziesz mieć jakieś pytania, daj znać w komentarzach (tylko nie spoiluj rozwiązaniami zadań – niech inni też mają chwilę zabawy!).

Struktury danych – błędy nowicjusza

  • Kopiowanie przez referencję:
    b = a to nie kopia danych – użyj a.copy() lub list(a)/dict(a)/set(a).
  • Mutowalne wartości w dict
    Gdy wartością jest lista, inicjuj ją osobno lub użyj defaultdict(list).
  • Niehashowalne klucze
    Lista jako klucz (d[[1,2]] = „x”) → TypeError. Użyj niezmiennych typów (tuple).

Podsumowanie

Brawo! Właśnie poznałeś_aś  trzy najważniejsze struktury danych w Pythonie i oraz podstawowe metody ich przetwarzania. 

Co teraz?

  1. Jeśli zdarza Ci się zapomnieć, co robi dana metoda i jaką strukturę wybrać w danej sytuacji, wydrukuj sobie tego PDF-a i powieś w widocznym miejscu.
  2. Przejdź do kolejnego punktu czyli Pętli i instrukcji warunkowych.

Co dalej?

Zapisz się do naszego newslettera, żeby nigdy nie przegapić żadnego wartościowego artykułu.

Zajrzyj do sekcji Kariera w AI, gdzie znajdziesz konkretne materiały o zmianach na rynku pracy – w Polsce i na świecie – oraz ścieżkach kariery związanych ze sztuczną inteligencją (nie tylko jako programista!).

→ A jeśli chcesz pisać modele i pracować jako Architekt AI, ale nie wiesz, od czego zacząć (lub utknąłeś gdzieś na ścieżce), odwiedź dział Nauka AI – czeka tam wiedza, ciekawostki i realne wsparcie.


! Uwaga

Niniejszy ebook ma charakter informacyjny i edukacyjny. Nie stanowi porady prawnej ani oferty pracy w rozumieniu przepisów krajowych lub unijnych.
Przy tworzeniu niniejszego artykułu korzystano ze wsparcia narzędzi opartych na sztucznej inteligencji – m.in. w zakresie porządkowania treści, analizy źródeł, przyspieszenia redakcji i wyszukiwania źródeł Jednak wszelkie decyzje dotycząca treści, interpretacji i ostatecznej formy zostały podjęte przez człowieka.

Podziel się swoją opinią

Jeden komentarz

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *