Przez lukasz 12 lutego, 2022 w Kurs Python'a dla początkujących

Python – bezpłatny kurs dla początkujących #8, Listy

Co to są listy?

Mnóstwo aplikacji zawiera dane, które są potrzebne do ich prawidłowego funkcjonowania np.:

  • na Facebook’u mamy pełno postów które wyświetlają się pod sobą, mamy również dużo znajomych, własne grupy, gry a w sklepie pełno przedmiotów,
  • szukając wyników w Google dostajemy całe strony wyników,
  • na dowolnej stronie z wiadomościami jeden po drugim pojawiają się artykuły z informacjami,
  • w grach komputerowych mamy rankingi,
  • na giełdzie mamy pełno różnych wykresów zawierających dane o kursie czy ofertach,
  • i wiele więcej różnych grup.

W Pythonie dzięki liście, możemy w zaledwie jednej zmiennej przechowywać wiele potrzebnych nam wartości. Pozwala nam to, na łatwe wyświetlanie potrzebnych nam informacji w aplikacji, wybieranie potrzebnych danych czy szybkie robienie obliczeń.

Dla przykładu mając 500 imion i nazwisk studentów, nie musimy każdego z nich przypisywać do oddzielnej zmiennej, bo to mógłby być koszmar gdybyśmy później chcieli znaleźć jedno imię i nazwisko:) Mamy zaledwie jedną zmienną w postaci listy i na niej możemy wykonywać różne operacje, które pokażę niżej.

Podstawy

Listę tworzymy używając nawiasów kwadratowych [], a w środku umieszczamy elementy rozdzielone przecinkami ,.

Elementami listy mogą być dowolne typy danych.

# tworzymy listę o nazwie foo
foo = ['a', True, 5]

# tworzymy listę z różnymi cyframi
my_numbers = [2, 3, 4, 5, 6, 7]

# tworzy listę zawierającą pięc 0, [0, 0, 0, 0, 0]
zeros = [0] * 5 

# tworzy listę: [0, 1, 2, 3, 4]
numbers = list(range(5))

Pozycja elementu

Każdy elementy, ma przypisany indeks w zależności od tego gdzie się znajduje. Ważna informacja jest taka, że indeksy liczymy od 0, a nie od 1, więc chcąc dostać się do wybranego elementu musimy o tym pamiętać.

Popularne działania

Każda lista ma również wbudowane metody, które ułatwiają nam z nią pracę. Często będziemy potrzebowali jednego elementu z listy, będziemy również szukać czy może mamy w liście jakieś wartości, będziemy dodawali lub usuwali elementy. Poniżej dodałem przykłady najczęściej wykonywanych akcji z listą.

my_numbers = [7, 8, 8, 6, 9]

# print już znamy, a funkcja len() policzy nam ilość elementów w liście, tutaj 5
print(len(my_numbers))  # 5

# zwróci pierwszy element z listy i przypisze go do zmiennej first, pamiętaj, że liczymy od 0
first = my_numbers[0]
# 7
print(first)

# zwróci ostatni element z listy i przypisze go do zmiennej last
last = my_numbers[-1]
# 9
print(last)

# doda cyfrę 6 na końcu listy [7, 8, 8, 6, 9, 6]
my_numbers.append(6)
print(my_numbers)

# w miesce indeksu 0 (czyli pierwszego), wstawi liczbę 6
my_numbers.insert(0, 6)
# [6, 7, 8, 8, 6, 9, 6]
print(my_numbers)

# usunie z listy pierwszy elementy mający wartość 6 - u nas pierwszy
my_numbers.remove(6)
# [7, 8, 8, 6, 9, 6]
print(my_numbers)

# usunie ostatni element
my_numbers.pop()
# [7, 8, 8, 6, 9]
print(my_numbers)

# usunie element znajdujący się na indeksie 3, czyli 6
my_numbers.pop(3)
# [7, 8, 8, 9]
print(my_numbers)

# zwraca index pierwszego elementu, który ma wartość 8
searched_index = my_numbers.index(9)
# czyli 3
print(searched_index)

# zwraca elementy w odwrotnej kolejności
reversed = my_numbers[::-1]
# [9, 8, 8, 7]
print(reversed)

# usuwa wszystkie elementy z listy
my_numbers.clear()
# []
print(my_numbers)

Nadpisywanie i wybieranie elementów

# lista z początkowymi wartościami
letters = ['a', 'b', 'c', 'd']

# w miejsce o indeksie 0, nadpisujemy obecną wartość wartością 'A'
letters[0] = 'A'
# ['A', 'b', 'c', 'd']
print(letters)

print(letters[0:3])  # wybierz elementy od indeksu 0 do 3 ['A', 'b', 'c']
print(letters[1:])  # wybierz elementy od indeksu 1 do końca ['b', 'c', 'd']
print(letters[:])  # skopiuj listę ['A', 'b', 'c', 'd']
print(letters[::2])  # zwróć co drugi element ['A', 'c']

# sprawdzamy czy lista zawiera wartość 'c'
if 'c' in letters:
    print('g znajduje się w liście')

W następnej lekcji napiszę jeszcze kilka ciekawych rzeczy dotyczących struktur danych. Nie przegap tego!

Nie zapomnij polubić stronę na facebooku i zapisać się do newsletter’a aby dostać informację o kolejnych świetnych lekcjach!

Leave a reply

pl_PLPolski