Naucz się struktura danych listy Python - część 1
- 2483
- 178
- Pani Janina Cieśla
Struktura danych to gromadzenie typów danych, związek między nimi oraz funkcje lub operacje, które można zastosować na danych. Typ danych może być strunowy, Liczba całkowita, Wartość pływająca i tak dalej.
Jaka jest różnica między obiektem zmiennym/niezmiennym?
Zmienione obiekty
- Obiekty, których stan można zmienić po utworzeniu, jak dodawanie, aktualizacja lub usuwanie elementów.
- Listy, słownik, zestaw, bajtowe są mianowalnymi typami obiektów w Pythonie.
Niezmienne obiekty
- Nie można zmodyfikować stanu obiektu. Po utworzeniu obiektu nie możemy dodawać, usuwać ani aktualizować elementów.
- Sznur, liczba całkowita, krotki, mrożone to niektóre z niezmiennych typów obiektów w Pythonie.
Jaka jest różnica między jednorodną/heterogeniczną strukturą danych?
- Jednorodna struktura danych - Elementy danych będą miały ten sam typ danych (np.: Tablica).
- Heterogeniczna struktura danych - Elementy danych mogą nie mieć tego samego typu danych (np.: Lista, krotki, zestawy itp.).
Jakie są prymitywne i niepryminitywne typ danych?
Prymitywne i niepryminitywne typy danychPrzed zrozumieniem funkcjonalności wbudowanej struktury danych pozwól nam zobaczyć kilka wbudowanych funkcji, które będą używane z obiektami struktury danych.
- Dir (OBJ) - wbudowana funkcja, która zwróci atrybut i metody.
- Len (OBJ) - Zwróć długość (liczba elementów) obiektu. Argumentem może być sekwencja (taka jak ciąg, bajty, krotka, lista lub zakres) lub kolekcja (taka jak słownik, zestaw lub zamrożony zestaw).
- del - To wbudowane słowo kluczowe służy do usuwania obiektu z przestrzeni nazw lub usuwania elementów z obiektu, takiego jak lista, słownik itp
- Typ (OBJ) - Funkcja type () zwraca typ obiektu lub zwraca nowy typ typu na podstawie przekazanych argumentów.
- ID() - Ta funkcja zwraca „tożsamość” obiektu. Jest to liczba całkowita, która gwarantuje, że jest unikalny i stały dla tego obiektu w ciągu swojego życia.
Teraz, jak widziałeś kilka ważnych szczegółów, kontynuujmy z Python Data Structures.
Pyton W zestawie wbudowane Struktury danych a także użytkownicy mogą zdefiniować własne struktury danych. Wbudowana struktura danych obejmuje LISTA, SŁOWNIK, Tuple, I USTAWIĆ. Niektóre przykłady dla struktur danych zdefiniowanych przez użytkownika to STOS, Kolejki, DRZEWO, Hashmap, itp…
Osoby pochodzące z innych języków programowania będą bardzo zaznajomione z typem tablicy. Ale w Pythonie nie są one tak powszechne.
Tutaj lista jest podobna do tablicy, ale lista pozwala nam przechowywać wartości dowolnego typu danych (heterogeniczne), podczas gdy tablica będzie przechowywać tylko dane określonego typu (int, float itp.). Aby użyć tablicy, musisz wyraźnie zaimportować tablicę z modułu „tablica”.
W tej serii artykułów w Python będziemy patrzeć na to, co jest struktura danych I wbudowana struktura danych Pythona.
Część 1: Struktura danych Python - lista Część 2: Struktura danych Pythona - krotki Część 3: Struktura danych Pythona - słownik Część 4: Struktura danych Python - Set/FrozensetLISTA
Lista to struktura danych, która jest zbiorem różnych typów danych. Co robi "Zbieranie różnych typów danych" oznacza? Lista może przechowywać struny, liczby całkowite, wartości zmiennoprzecinkowe, zagnieżdżona lista i tak dalej.
Lista Obiekty są „Zmienny”Co oznacza, że elementy utworzone w liście można uzyskać, modyfikowane lub usunięte. Indeksowanie wsparcia listy. Każdy element na listach jest przypisany do adresu, a adres ten można użyć do dostępu lub modyfikacji określonej wartości elementu.
- Stwórz listę
- Włóż/dostęp/modyfikuj listę
- Usuń listę
SPORZĄDZAĆ LISTĘ
Lista można tworzyć za pomocą nawiasów kwadratowych.
>>> name_Empty = [] # pusta lista >>> name = [„Karthi”, „leo”, „Matt”, „Kane”, „Scott”, „Petter”, „Will”] # Lista z typem danych string >>> name_int = [1,2,3] # lista z liczbą danych liczb całkowitych >>> name_mixed = [name_int, nazwa, 1,2,3.14] # Lista z zagnieżdżonymi elementami listy. >>> name_mixed [[1, 2, 3], [„karthi”, „leo”, „Matt”, „Kane”, „Scott”, „Petter”, „Will”], 1, 2, 3.14] >>> name_int [1, 2, 3]
Możemy użyć wbudowanych typ()
funkcja, aby sprawdzić typ obiektu.
>>> Typ (nazwa)Utwórz listę w Python
Możemy uzyskać dostęp do metody I atrybuty z lista instancja za pomocą Dir ()
funkcjonować.
>>> dir (nazwa) [„__add__”, „__class__”, „__Contains__”, „__Delattr__”, „__DELITEM__”, „__dir__”, „__doc__”, „__eq__”, '__format__', '__ge__', '__getAttribute__ ', „__getItem__”, „__gt__”, „__hash__”, „__iadd__”,' __imul__ ',' __init__ ',', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__',, ',', '__mul__',, ',', '__mul__',, „__Ne__”, „__new__”, „__Reduce__”, „__Reduce_ex__”, „__repr__”, „__reversed__”, „__rmul__”, „__setattr__”, „__setitem__”, '__Sizef__', '__str__', '__subclasshassHookst', „append. „,„ wyczyść ”,„ copy ”,„ hrabia ”,„ rozszerzenie ”,„ indeks ”,„ insert ”,„ pop ”,„ renve ”,„ reverse ”,„ sort ”]]
Możemy znaleźć całkowitą liczbę elementów na liście za pomocą len ()
metoda.
>>> len (nazwa)
Możemy utworzyć nową listę z istniejącej listy za pomocą lista.Kopiuj()
metoda.
>>> name_new = nazwa.copy () >>> name_new [„karthi”, „leo”, „Matt”, „Kane”, „Scott”, „Petter”, „Will”]Sprawdź metody i atrybuty listy
Lista wkładania / dostępu / modyfikowania / modyfikowania
Możemy wstawić element do listy w dowolnej pozycji za pomocą lista.Wstaw (i, x)
metoda.
>>> name = [„leo”, „Matt”, „Kane”, „Scott”, „petter”, „Will”] >>> imienia [„leo”, „matt”, „kane”, „Scott” , „Petter”, „Will”] >>> Imię.wstaw (0, „tom”) # Metoda wstawienia bierze 2 argumenty (pozycja indeksu, pozycja) >>> Nazwa [„tom”, „leo”, „matt”, „kane”, „scott”, „petter”, ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ',', ', Will '] # tom jest wstawiany w pozycji 0.Wstaw elementy na liście
Możemy użyć lista.Dodatek (x)
Metoda dołączenia pojedynczego elementu na listę. To wstawię pozycję na koniec listy.
>>> name = [] >>> len (nazwa) 0 >>> Nazwa.append („leo”) >>> nazwa.append („Matt”) >>> Nazwa.append („kane”) >>> drukuj (nazwa) [„leo”, „Matt”, „Kane”]Dołącz element na liście
Możemy użyć lista.rozszerzyć()
metoda dodania wielu elementów do listy.
>>> new_name = [„gowtham”, „Martin”, „luis”] >>> Imię imienia.exter (new_name) >>> Imię [„will”, „petter”, „scott”, „kane”, „Matt”, „leo”, „karthi”, „will”, „gowtham”, „Martin”, ',', ',', ',', Luis ']Dodaj wiele elementów do listy
Możemy również użyć „+”
operator, aby połączyć dwie listy. Obie lista może mieć różne typy danych.
>>> a = [1,2,3] >>> b = [2,3,3] >>> c = a + b >>> c [1, 2, 3, 2, 3, 3]> >> d = [„Karthi”, „Kenny”] >>> e = a + d >>> e [1, 2, 3, „Karthi”, „Kenny”]Połącz dwie listy w Pythonie
Jak już wspomniano, listy obiekty są zmienne. Element listy można zmodyfikować, odwołując się do pozycji indeksu i przypisując wartość do niej.
>>> Nazwa # Przed zmodyfikowanym [„tom”, „leo”, „Matt”, „Kane”, „Scott”, „Petter”, „Will”] >>> Imię [0] = „Karthi” >>> Nazwa # po zmodyfikowanym [„Karthi”, „Leo”, „Matt”, „Kane”, „Scott”, „Petter”, „Will”]Zmodyfikuj pozycję listy według pozycji indeksu
lista obsługuje zarówno pozytywne, jak i negatywne indeksowanie.
Indeksowanie zaczyna się od 0 i ujemne indeksowanie zaczyna się od -1.
Indeksowanie PythonMożemy uzyskać dostęp do elementu listy za pomocą ich pozycji indeksu.
>>> Nazwa [0] # Dostęp do elementu listy przy indeksie 0 „leo” >>> Nazwa [1] „Matt” >>> Nazwa [4] „Petter” >>> Imię [5] „Will” >> > Nazwa [-1] # Dostęp do elementu listy z negatywnym indeksowaniem „Will” >>> Nazwa [-6] „Leo”Element listy dostępu za pomocą pozycji indeksu
Możemy również użyć krojenia, aby uzyskać dostęp do elementów na liście. Krojenie pozwala nam uzyskać dostęp do zakresu elementów, definiując parametry początkowe, zakończenia, kroku.
# Składnia: lista [pozycja początkowa, pozycja końcowa, krok] >>> Nazwa [0: 3] [„tom”, „leo”, „Matt”] >>> Nazwa [:] [„tom”, „leo” , „Matt”, „Kane”, „Scott”, „Petter”, „Will”] >>> Imię [: 4] [„tom”, „leo”, „Matt”, „Kane”] >>> Imię Nazwa [: -2] [„tom”, „leo”, „Matt”, „Kane”, „Scott”] >>> Nazwa [:-1] [„tom”, „leo”, „Matt”, „Kane „,„ Scott ”,„ petter ”] >>> Imię [:-1: 2] [„ tom ”,„ Matt ”,„ Scott ”]Zakres dostępu na liście
Możemy znaleźć liczbę występów dla danej wartości za pomocą lista.hrabia (x)
metoda.
>>> name_int = [1,1,2,3,1] >>> name_int.Zlicz (1) 3Znajdź występowanie wartości
Możemy znaleźć pozycję indeksu danego elementu za pomocą lista.indeks (x [, start [, end]])
metoda.
>>> Nazwa # Wstaw „Will” na końcu listy. Teraz mamy 2 nazwiska „Will”. [„Will”, „Petter”, „Scott”, „Kane”, „Matt”, „Leo”, „Karthi”, „Will”] >>> Imię Nazwa.indeks („will) # Zwraca pozycję indeksu pierwszego występu x. 0 >>> Imię.indeks („will”, 2) # początkowe indeks pozyton'2 'jest podany. 7 >>> Imię.indeks („will”, 2,4) # Podano pozycję indeksu początkowego i końcowego. Ponieważ nie ma „woli” w danej pozycji wyszukiwania, rzuci błąd wartości. Traceback (najnowsze połączenie ostatnie): plik „”, wiersz 1, w Valueerror: „Will” nie jest na liście
Możemy użyć lista.odwracać()
metoda odwrócenia elementów na liście.
>>> Nazwa [„Karthi”, „leo”, „Matt”, „Kane”, „Scott”, „petter”, „Will”] >>> Imię Imię.reverse () >>> Nazwa [„will”, „petter”, „Scott”, „Kane”, „Matt”, „leo”, „Karthi”]Odwrotne elementy na liście
Usuń listę
Możemy użyć lista.pop (x)
metoda usuwania elementu z listy pod adresem X
pozycja. Ta funkcja usunie element z listy i wyświetli usunięty element. Jeśli X
nie jest wtedy określone Muzyka pop()
Metoda zwróci ostatni element z listy.
>>> Imię [„Will”, „Petter”, „Scott”, „Kane”, „Matt”, „Leo”, „Karthi”, „Will”, „Gowtham”, „Martin”, „Luis”]> >> Imię.Pop (0) „Will” >>> Nazwa [„Petter”, „Scott”, „Kane”, „Matt”, „Leo”, „Karthi”, „Will”, „Gowtham”, „Martin”, „Luis” '] >>> Imię.pop () „Luis”
Możemy również użyć lista.Usuń (x)
metoda usuwania elementu z listy. Tutaj X
przyjmuje wartość elementu i rzuca ValueerRor Jeśli X
nie ma na liście.
>>> name = [„leo”, „Matt”, „Kane”, „Scott”, „petter”, „Will”] >>> Imię imienia.Usuń („leo”) >>> Nazwa [„Matt”, „Kane”, „Scott”, „Petter”, „Will”] >>> Imię Imię.Usuń („leo”) traceback (najnowsze połączenie ostatnie): plik „”, wiersz 1, w valerorror: lista.Usuń (x): x nie na liście
Możemy stworzyć listę pustą, przypisując nazwę listy do nawiasów kwadratowych lub używając lista.jasne()
metoda.
>>> name1 = nazwa.copy () >>> Name1 [„petter”, „Scott”, „Kane”, „Matt”, „leo”, „karthi”, „will”, „gowtham”, „Martin”] >>> imienia ['' Petter ', „Scott”, „Kane”, „Matt”, „Leo”, „Karthi”, „Will”, „Gowtham”, „Martin”] >>> name = [] >>> Nazwa [] >> > Nazwa1.clear () >>> name1 []
Zamiast używać metod listy do opróżnienia listy lub usunięcia elementu z listy, możemy użyć wbudowanego słowa kluczowego del
Aby wykonać te działania. „Del” Słowo kluczowe może usunąć obiekt listy z pamięci lub usunąć element z listy lub usunąć element z plastra.
>>> name = [„leo”, „Matt”, „Kane”, „Scott”, „petter”, „Will”] >>> del Nazwa [0] >>> Nazwa [„Matt”, „Kane” , „Scott”, „petter”, „Will”] >>> Del Nazwa [-3:] >>> Nazwa [„Matt”, „Kane”] >>> del Nazwa [:] >>> Nazwa []
Wbudowany ID()
Funkcja zwraca „tożsamość”Obiekt. Jest to liczba całkowita, która gwarantuje, że jest unikalny i stały dla tego obiektu w ciągu swojego życia.
>>> ID (nazwa) 139979929658824 >>> Del Nazwa >>> id (nazwa) Traceback (najnowsze połączenie ostatnie): plik "", wiersz 1, w nameeRror: Nazwa „nazwa” nie jest zdefiniowana
Notatka: Usunęliśmy zmienną listę z pamięci za pomocą del ()
, stąd rzuca błąd nazwy.
Help () Funtion:
Wbudowane z pomocy funkcjonować()
jest bardzo przydatne, aby uzyskać szczegółowe informacje na temat określonego obiektu lub metod tego obiektu.
Pomoc (obiekt) (obiekt.metoda)
Streszczenie
Do tej pory w tym artykule widzieliśmy, jak możemy użyć Wymień strukturę danych do przechowywania, dostępu, modyfikacji, usuwania obiektów listy za pomocą metod listy. Widzieliśmy również niektóre wbudowane funkcje, takie jak ID(), Dir (), typ(), pomoc() które są bardzo skutecznymi funkcjami. Mamy również rozumienie listy w Pythonie, który zapewnia bardziej zwięzły i czytelny sposób tworzenia listy.