Python - zajęcia 4

Python - zajęcia 4
Photo by Clint Adair / Unsplash

Struktury Danych

Listy

  • uporządkowane kolekcje, przechowują różne typy danych
  • moja_lista = [1, 2, 3, "pies", "kot", True, (1, 2)]
  • są modyfikowalne

Operacje na listach:

  • indeksowanie, np. moja_lista[indeks]
  • wycinanie (slicing), np. moja_lista[start:stop:step]
  • dodawanie (łączenie dwóch list), np. moja_lista1 + moja_lista2
  • mnożenie (powielenie listy x razy), np. moja_lista * x

Metody:

  • append() - dodaje element na koniec listy
  • pop() - usuwa ostatni lub wskazany element z listy
  • clear() - usuwa wszystkie elementy z listy
  • index(x, start, stop) - zwraca index pierwszego wystąpienia x
  • count() - zwraca liczbę wystąpień
  • sort() - sortuje listę

Krotki

  • używane do przechowywania danych, które nie powinny być zmienianie
  • moja_krotka = (1, 2, 3, 4)
  • są niemodyfikowalne

Operacje na krotkach:

  • indeksowanie
  • wycinanie (slicing)
  • dodawanie
  • mnożenie

Metody:

  • index() - zwraca index pierwszego wystąpienia
  • count() - zwraca liczbę wystąpień

Słowniki

  • nieuporządkowane kolekcje par klucz - wartość
  • klucze muszą być unikalne i niemodyfikowalne

Operacje na słownikach:

  • dostęp: slownik[klucz] - dostęp do wybranej wartości przypisanej do klucza
  • dodawanie/aktualizacja: slownik[klucz] = wartosc -> dodaje lub aktualizuje parę klucz-wartość
  • usuwanie: del slownik[klucz] - usuwa parę klucz-wartość

Metody:

  • get(klucz, default=None): Zwraca wartość dla klucz, jeśli klucz istnieje, w przeciwnym razie default
  • keys(): Zwraca obiekt widoku kluczy w słowniku
  • values(): Zwraca obiekt widoku wartości w słowniku
  • items(): Zwraca obiekt widoku par klucz-wartość w słowniku
  • pop(klucz, default=None): Usuwa klucz i zwraca jego wartość, lub default jeśli * klucz nie istnieje
  • popitem(): Usuwa i zwraca ostatnią parę klucz-wartość
  • clear(): Usuwa wszystkie elementy ze słownika
  • update(iterable): Aktualizuje słownik, dodając pary klucz-wartość z innego iterowalnego obiektu

Zbiory

  • nieuporządkowane kolekcje unikalnych elementów

  • użyteczne do usuwania duplikatów z danych

  • Literał zbioru: {element1, element2, ...}

  • nie zachowują kolejności elementów

  • nie mogą zawierać mutowalnych obiektów jak listy czy słowniki

  • Konstruktor: set([iterable]) - tworzy zbiór z elementów iterowalnego obiektu

  • Operacje na zbiorach:

  • Dodawanie elementu: zbior.add(elem)
  • Usuwanie elementu: zbior.remove(elem) - rzuca wyjątek KeyError jeśli elem nie istnieje. zbior.discard(elem) - nie rzuca wyjątku
  • Czyszczenie zbioru: zbior.clear() - usuwa wszystkie elementy ze zbioru

Operacje matematyczne na zbiorach:

  • Unia: zbior1 | zbior2 lub zbior1.union(zbior2)
  • Przecięcie: zbior1 & zbior2 lub zbior1.intersection(zbior2)
  • Różnica: zbior1 - zbior2 lub zbior1.difference(zbior2)
  • Różnica symetryczna: zbior1 ^ zbior2 lub zbior1.symmetric_difference(zbior2)

Metody:

  • add(elem): Dodaje element do zbioru.
  • remove(elem): Usuwa element ze zbioru; rzuca KeyError jeśli element nie istnieje.
  • discard(elem): Usuwa element ze zbioru; nie rzuca wyjątku jeśli element nie istnieje.
  • pop(): Usuwa i zwraca losowy element ze zbioru; rzuca KeyError jeśli zbiór jest pusty.
  • clear(): Usuwa wszystkie elementy ze zbioru.