CodeGym /Kursy /Python SELF PL /Modyfikacja listy

Modyfikacja listy

Python SELF PL
Poziom 7 , Lekcja 4
Dostępny

5.1 Dodawanie elementów

W Pythonie dodawanie elementów do listy można zrealizować na różne sposoby, co czyni listy jednymi z najbardziej elastycznych struktur danych w języku. Oto podstawowe metody, które Python dostarcza do dodawania elementów do listy:

Użycie metody append()

Metoda append() dodaje element na końcu listy. To najprostsza i najczęściej stosowana metoda do dodawania jednego elementu:


my_list = [1, 2, 3]
my_list.append(4)
print(my_list)  # Wyświetli [1, 2, 3, 4] 
        

Użycie metody extend()

Metoda extend() pozwala dodać do listy kilka elementów jednocześnie. Jako argument metoda przyjmuje obiekt iterowalny (np. inną listę, krotkę, zbiór):


my_list = [1, 2, 3, 4]
my_list.extend([5, 6])
print(my_list)  # Wyświetli [1, 2, 3, 4, 5, 6]
        

Użycie metody insert()

Metoda insert() dodaje element na wskazanej pozycji w liście. Metoda ta przyjmuje dwa argumenty: indeks, na który należy umieścić element, oraz sam element:


my_list = [1, 2, 3, 4, 5, 6]
my_list.insert(0, 0)
print(my_list)  # Wyświetli [0, 1, 2, 3, 4, 5, 6]
    

Dodawanie elementów za pomocą operatora dodawania

Listy można także łączyć z użyciem operatora „+”, co również prowadzi do dodania elementów jednej listy do drugiej:


my_list = [0, 1, 2, 3, 4, 5, 6]
my_list = my_list + [7, 8]
print(my_list)  # Wyświetli [0, 1, 2, 3, 4, 5, 6, 7, 8]
        

Cechy szczególne i ostrzeżenia

Przy użyciu append() i extend() zmienia się oryginalna lista. Jednak podczas korzystania z „+” tworzona jest nowa lista, dlatego jeśli masz gdzieś odwołanie do starej listy, to ona pozostanie niezmieniona.

5.2 Bezpośrednie zmienianie elementu

W Pythonie zmiana elementów w liście jest prostą operacją dzięki mutowalności (zmienności) list. To pozwala na modyfikowanie list bez tworzenia nowych kopii. Oto jak można pracować z tymi możliwościami:

Bezpośrednia zmiana elementów

Aby zmienić element w liście, wystarczy przypisać nową wartość po indeksie:


my_list = [1, 2, 3, 4]
my_list[2] = 30 
print(my_list)  # Wyświetli [1, 2, 30, 4] 
        

5.3 Przypisywanie zakresu elementów:

W Pythonie przypisywanie zakresu elementów w liście odbywa się za pomocą wycinków. Wycinki pozwalają nie tylko na uzyskanie podlist, ale także przypisywanie ich. To czyni listy w Pythonie szczególnie elastycznymi w pracy z sekwencjami danych.

Używanie wycinków do przypisywania

Wycinki w Pythonie mogą być używane do zmiany kilku elementów listy naraz. Na przykład, można zastąpić część listy innymi wartościami, wskazując wycinek i przypisując mu nową listę elementów:


numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
numbers[2:5] = [20, 30, 40]
print(numbers)  # Wyświetli [0, 1, 20, 30, 40, 5, 6, 7, 8, 9]
        

Liczba elementów po lewej i prawej stronie znaku równości nie musi się zgadzać.

Elementów po prawej może być więcej:


numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
numbers[2:2] = [20, 30, 40]
print(numbers)  # Wyświetli [0, 1, 20, 30, 40, 2, 3, 4, 5, 6, 7, 8, 9]
        

Lub mniej:


numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
numbers[2:9] = [20, 30, 40]
print(numbers)  # Wyświetli [0, 20, 30, 40, 9]
        

Takie podejście pozwala pisać bardzo kompaktowy kod, ale nie zapominaj, że w przypadku użycia wycinków, ostatni element nie jest wliczany w zakres.

Komentarze (1)
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION
kacper Poziom 8, Wrocław, Polska
8 lutego 2025
numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] numbers[2:9] = [20, 30, 40] print(numbers) #wyświetli [0, 1, 20, 30, 40, 9]