Listy Pythona są uporządkowanymi kolekcjami. Są ważnym elementem kodu programu. Listy odnoszą się do osadzonych obiektów językowych. Za ich pomocą można szybko i skutecznie przetwarzać dużą ilość informacji i struktur danych o dowolnej złożoności.
Właściwości i cechy listy obiektów
Listy są elastycznymi i zmiennymi typami danych. Mogą być dowolnej długości i zawierać nieograniczoną ilość informacji. Jako elementy sekwencji można używać łańcuchów, prostych i poprawnych liczb, słowników. Każda lista zmiennych w Pythonie może być indywidualnie przetwarzana, usuwana lub zastępowana. Lista zawiera pewien zestaw właściwości, które odróżniają je od innych typów danych:
Są to grupy obiektów z uporządkowanym pozycjonowaniem od lewej do prawej. Listy zapewniają dostęp do przesunięcia, to znaczy numeru obiektu. Listy w języku Python mają niejednorodność. Sekwencja może zawierać obiekty różnych typów, w tym liczby, odwzorowania, linie, pliki. Listy należą do kategorii obiektów zmiennych z nieograniczoną liczbą zagnieżdżeń.Listy można mylić z powiązanymi strukturami danych. Ale w rzeczywistości są to odniesienia do kontenerów do obiektów, a nie do ich kopii. Są jak książka adresowa. Wszystkie pozycje na liście wskazują lokalizację, w której znajduje się żądany obiekt. Na tej liście Python jest podobny do tablic języka C, ale implementowany w tłumaczu.
Podstawowe operacje sekwencji
Formalnie w języku występują trzy kategorie. Te liczby sąwyświetlacz i sekwencja, które obejmują listę typów. Dla każdej grupy istnieje ogólny zestaw operacji. Na przykład dodawanie, odejmowanie i mnożenie dla obiektów numerycznych lub klucza dostępu do słowników.
Sekwencja jest również charakteryzuje się operacji
dostępu do elementu przy użyciu wskaźników całkowite __getitem __ (); Określanie długości __len __ (); konkatenacja za pomocą operatora "+"; Wyciągnięcie wycięcia [:]. Listy w akcji
Listy mają szerszy zakres funkcji niż ciągi w Pythonie. Jest to potężne narzędzie programistyczne z wieloma określonymi funkcjami, mające zastosowanie tylko do listy typów. Jak wygląda lista metod w praktyce:
moja lista = [jeden, dwa, trzy] # tworzenie nowej listy; moja lista; ["jeden", "2", "trzy"]; len (moje zestawienia); 3 # tłumacz zwraca długość; moja lista [+ 1, 2, 3] # konkatenacja; [jeden, dwa, trzy, jeden, dwa, trzy]; moja lista * 2 # powtórzyć; [jeden, dwa, trzy, jeden, dwa, trzy].Przy wykonywaniu konkatenacji na każdej stronie znaku „+” powinien być taki sam rodzaj zlecenia, w przeciwnym razie komunikat błędu tłumacza:
[1, 2, 3] + 314 # TypeError: może tylko listy złączyć (nie « float ») do listy.W celu dokonania ciąg Python i listy do wykonywania konwersji typu pre-Str:
vtoroy_spysok = list («string„) # Konwersja obiektu "string"; druga lista; ["S", "t", "P", "O", "k", "A"] # interpretera zwraca wykazu; druga lista + moja_lista; ["c", "t", "p", "o", "k", "a","Jeden", "2", "trzy"].Podczas tworzenia listy w Pythonie należy przestrzegać ścisłych zasad składni. Każdy obiekt musi być ujęty w nawiasy kwadratowe, a elementy oddzielone przecinkami.
Czym są iteracje i generatory list?
Iteracja jest procesem powtórzenia. W kontekście list - jest to progresywny postęp na elementach iterowanego obiektu. Na przykład:
3 w [1, 2, 3] # sprawdzi, czy określony element jest zawarty; Prawda; dla x w [1, 2, 3, 4]: # wykona iterację; print (x); 1; 2; 3; 4.Jeśli powtórzenie - po prostu pominąć każdy element, wytwarzanie jest procesem tworzenia nowej listy typ obiektu. W Pythonie generatory podobnych do listy trwa, ale raczej pracę i składniowo wygląda o wiele prostsze:
Spysok_1 = [c * 4 dla c «w» SPAM] # jakiego pokolenia; Lista_1; ["SSSS", "PPPP", "AAAA", "MMMM"];
Lista_2 = []; dla c w "SPAM": # podobne do polecenia generacji; List_2.append (c * 4) # list.append () dodaje nowe elementy; Lista_2; [«SSSS», «PPPP», «AAAA», «MMMM»].W obu przykładach wynik jest identyczny. Ale przy użyciu generatora kod staje się znacznie krótszy i łatwiejszy. To podejście jest w pełni zgodne z The Zen of Python. Jest to zen, czyli kod języka, w którym jeden z punktów: "Łatwiej jest spasować".
,
, Ekstrakt plaster i dostęp wskaźnika
Te dwie operacje są pozornie podobne i może pracować na poszczególne elementy Pythonie. Ale jest znacząca różnica. W wyniku indeksacji zwracana jest osobna część sekwencji. Cięcie plastra tworzy nowy obiektlista typów
Spysok1 = ["spamu", "spamu," "! spamu"], Spysok1 Przemieszczenie # odliczanie rozpoczyna się od zera, ,