Notatki - AJ
Zmienne:
- Ułatwiają znalezienie jakiejś zawartości
- Mają swoje nazwy, po których je identyfikujemy
- Różne zmienne mogą się odwoływać do tych samych danych/zawartości o określonym typie
- Zmienne można przepisywać z zawartości na zawartość o różnych typach
- Nie używamy znaków specjalnych, dużych liter i samych cyfr lub zaczynać się od nich
- Deklaracja zmiennej: mój_zwierzak = "pies"
Typy:
- mogą być modyfikowalne i niemodyfikowalne (zawartość otwarta i zamknięta)
- Teksty nie są modyfikowalne w Pythonie
- Przy modyfikowalnych zawartościach trzeba uważać na zmienne (zmiana zawartości wpłynie na wszystkie przypisane zmienne)
- Przykład dla modyfikowalnych (lista, może też składać się z osobnych wyrazów, też jest edytowalna):

Przykład dla niemodyfikowalnych:

Struktury danych - posiadają swoje własne metody. Przykłady struktur:
- Listy i krotki (ang. tuple): element jeden za drugim, powtórzenia, uporządkowane (każdy element ma swój numer - indeks). indeksy zaczynają się od 0. Listy i krotki mogą być mieszane typami tzn.: lista = [1, 2.09, True, "kot", ("desery", "zupy")]
- moja_lista = [1, 2, 2, 3]
- moja_krotka = (1,2,3,4)
- Listy sa modyfikowalne (mutable)- dodawanie, odejmowanie elementów itd.., ale raczej nie odwołujemy się do środkowych wartości tylko korzystamy z nich całych coś jak półka na książki (odkładanie, dokładanie, przeglądanie), ale nie przeszukujemy ich. Nie korzystamy z nich jeśli nie wiemy czego szukamy. Możemy mieć listy, w których elementem są krotki. Listy można ze sobą dodawać, wtedy złączą się ze sobą.
- Krotki są niemodyfikowalne (immutable). Jedna metoda to zrobić nową krotkę z nowy elementem. Krotki są szybsze i mniej obciążające dla komputera. Dobre dla danych, które nie mogą być zmieniane np. kategorie w menu jak dania główne, przystawki, napoje itd. Elementami krotki mogą być listy, ale jest to niepraktyczne i unika się takich sytuacji.
- Słowniki (dictionary), przypisujemy do wartości ich klucz np. slownik = {"klucz1":"wartosc1", "klucz2":"wartosc2"}
- Klucz musi być unikalny, nie może być modyfikowalny
- Słownik to struktura nieuporządkowana, nie odwołujemy się do indeksów, bo ich nie ma w tym przypadku - od tego są tu klucze
- Kluczem musi być element niemodyfikowalny, czyli nie może być to ani lista ani inny słownik. Może byc to tekst, liczba, krotka (ale nie taka, co ma w sobie listę))
- Slownik jest modyfikowalny
- Wartości mogą być dowolne i róznych typów np. inny słownik, lista
- Slownik nazywany zamiennie jako obiekt
- .pop() nie zadziała na ostatni element słownika, bo brakuje odwołania do klucza
- Zbiory (set)
- Modyfikowalne, podobne do listy
- Nie mamy duplikatów
- Przydatne do usuwania duplikatow z listy
- Nie mają indeksów, jest nieuporządkowany
- Np. zbior={unikat1, unikat2}