Struktury danych

Listy i krotki - wspólne cechy
- Każdy element ma swój indeks
- Obie mogą posiadać duplikaty
- Można przemieszczać się po ich elementach
Listy - List
- Są modyfikowalne (mutable) tzn. można dodawać/odejmować nowe elementy
- Bardzo często przemieszczamy się w ich wypadku
- Unika się sięgania po elementy umieszczone gdzieś w środku listy
- Dobra praktyka - używać na danej liście jeden typ danych
moje_ksiazki = ["Sandman", "Opowieści niesamowite", "Delirium"]
Deklaracja
Krotki - Tuple
- Są niemodyfikowalne (immutable)
- Ponieważ ich długość jest stała częściej sięgamy po elementy znajdujące się gdzieś głęboko w nich
menu_kategorie = ("przystawki", "zupy", "desery")
Deklaracja
Słowniki - Dictionary
- Za pomocą klucza można łatwo znaleźć przypisaną do niego wartość
- Klucze nie mogą się powtarzać
- Dobrze jest trzymać się tego samego rodzaju danych
menu ={
"zupa" : "ogórkowa",
"lody" : "waniliowe",
"sok" : "pomarańczowy"
}
Deklaracja
Aby wyświetlić wartość przypisaną do konkretnego klucza musimy w okrągłym nawiasie zapisać nazwę słownika + w kwadratowym nawiasie nazwę klucza
print(meny["zupa"])
Metody:
.keys() - zwraca listę kluczy słownika
.values() - zwraca listę wartości słownika
.pop() - usuwa element o podanym kluczu
.items() - zwraca listę krotek dla każdej pary kluczy:wartość
.get() - zwraca wartość dla danego klucza
Zbiory - Set
- Nie mają indeksów
- Nie posiadają duplikatów wartość, więc jeżeli doda się wartość która już istnieje poprzednia zostanie usunięta
moje_ksiazki = {"Sandman", "Opowieści niesamowite", "Delirium"}
Deklaracja
Które typy są modyfikowalne (mutable)?
typ | modyfikowalny | niemodyfikowalny |
---|---|---|
liczba całk. | tak | |
liczba zmiennop. | tak | |
wart.log | tak | |
ciąg znaków | tak | |
krotka | tak | |
lista | tak | |
słownik | tak | |
zbiór | tak |