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 |