Funkcja Enumerate() w Pythonie: podstawowy przewodnik

Opublikowany: 2021-06-24

Python jest jednym z najbardziej preferowanych języków wśród naukowców zajmujących się danymi. Język jest intuicyjny, a Python ma szereg przydatnych bibliotek do rozwiązywania różnych problemów. Zawiera wiele modułów, które pomagają naukowcom zajmującym się danymi na różnych etapach każdego problemu związanego z nauką o danych — od eksploracji danych po analizę i raportowanie.

W upGrad doradzamy profesjonalistom z różnych dziedzin, w tym ekonomii, nauk humanistycznych, inżynierii. Python był jak dotąd najłatwiejszym językiem do nauki zarówno dla początkujących, jak i profesjonalistów na każdym etapie ich kariery. Tak więc, jeśli jesteś początkującym naukowcem zajmującym się danymi, który chce postawić pierwsze kroki, Python może być dobrym punktem wyjścia!

Język programowania Python ma wiele funkcji, które pomagają przeszukiwać różne zestawy danych i manipulować kontenerami danych zgodnie z wymaganiami. Jedną z takich funkcji jest metoda enumerate(). Jest to jedna z ważniejszych funkcji w Pythonie, szczególnie do pracy z obszernymi zbiorami danych. Nie tylko to, ale funkcja jest również znacznie bardziej zoptymalizowana niż inne funkcje Pythona, które wykonują podobne zadanie – utrzymuje wydajność i czystość kodu.

Funkcja dodaje licznik do dowolnego iterowalnego obiektu. Następnie za pomocą licznika możesz śledzić liczbę iteracji, które miały miejsce. Wartość tego licznika jest przechowywana oddzielnie. Korzystając z tej metody, możesz zapętlić listę lub słownik, krotkę lub zestaw elementów, jednocześnie śledząc indeks wszystkich elementów.

W tym artykule omówimy dalej funkcję enumerate()!

Składnia i zastosowanie metody enumerate()

Funkcja enumerate() tworzy oddzielną zmienną licznika, która śledzi liczbę iteracji w pętli. Jest to wbudowana funkcja Pythona, więc nie musisz importować żadnych bibliotek, aby uzyskać do niej dostęp.

Korzystając z funkcji enumerate(), nie musisz martwić się tworzeniem instrukcji range(), aby uzyskać pełną długość tablicy. Ponieważ masz zmienną licznika, możesz szybko iterować po enumerate() bez tworzenia innego iteratora.

Oto składnia metody enumerate():

enumerate(iterable, startIndex)

Ma dwa parametry:

  • Iterowalny: dowolny obiekt, który można zapętlić.
  • startIndex: jest to opcjonalne. Jeśli podasz tutaj jakąkolwiek wartość, odliczanie rozpocznie się od podanej przez Ciebie wartości i będzie rosło do końca pętli. Domyślnie wartość startIndex wynosi 0.

Zapoznajmy się z działaniem metody enumerate(), sprawdzając kilka przykładów!

Oto mały fragment kodu. Mamy tablicę o nazwie food_items, aw pętli for wywołaliśmy metodę enumerate() z iterowalną wartością food_items (będzie to tablica, przez którą ta funkcja będzie się zapętlać). Następnie próbujemy wydrukować indeks i nazwę — są to dwa elementy zwracane przez enumerate()

food_items = [„Pizza”, „Burger”, „Sałatka”, „Lasagna”, „Spaghetti”]

dla indeksu, nazwa w enumerate(food_items):

drukuj(indeks, nazwa)

Funkcja enumerate() iteruje po naszym elemencie tablicy żywności i zwraca indeks oraz nazwę. Indeks to liczba iteracji, które miały miejsce, a nazwa to konkretna pozycja na liście. Oto, co wyprowadza program:

0 Pizza

1 Burger

2 Sałatki

3 Lasagne

4 Spaghetti

Jak widzisz, wynik jest taki, jak byś się spodziewał – otrzymujesz obiekt z indeksami i nazwami dla różnych pozycji na liście food_items. Użycie funkcji enumerate() zamiast len() lub range() sprawia, że ​​nasz kod jest niezwykle czysty i czytelny!

Praca z obiektem wyliczenia

Domyślnie enumerate() zwraca listę krotek. Możemy to zobaczyć, drukując wartość „item” podczas iteracji po tablicy food_items:

dla pozycji w enumerate(food_items):

drukuj(pozycja)

Ten kod zwraca wartość indeksu i artykuł spożywczy pod tym indeksem w strukturze danych krotki.

(0, „Pizza”)

(1, „burger”)

(2, „Sałatka”)

(3, „Lasagne”)

(4, 'Spaghetti')

Jeśli zwracałeś uwagę od początku tego artykułu, pamiętasz, że metoda enumerate() przyjmuje dwa parametry — iterable i startIndex. Domyślnie nasza dotychczasowa metoda mówiła – jako startIndex. Spróbujmy to zmienić i zobaczmy, jak to wyjdzie!

food_items = [„Pizza”, „Burger”, „Sałatka”, „Lasagna”, „Spaghetti”]

dla indeksu nazwa w enumerate(food_items, 10):

drukuj(indeks, nazwa)

Nasz program zwraca następujące elementy

10 Pizzy

11 Burger

12 Sałatka

13 Lasagne

14 Spaghetti

Jest to przydatne w przypadkach użycia, w których chcesz rozpocząć swoją listę od liczby innej niż 0.

Możemy również tworzyć krotki z elementem listy i indeksem za pomocą metody enumerate(). Oto przykład:

food_items = [„Pizza”, „Burger”, „Sałatka”, „Lasagna”, „Spaghetti”]

food_items_with_counter = lista(enumerate(food_items, 1))

drukuj(jedzenie_items_list_with_counter)

Kod zwróci listę krotek z elementami żywności i wartością indeksu z metody enumerate(). Sprawdź to:

[(1, 'Pizza'), (2, 'Burger'),(3, 'Sałatka'), (4, 'Lasagna'), (5, 'Spaghetti')]

Wniosek

Funkcja enumerate() w Pythonie jest niezawodną i zoptymalizowaną funkcją. Jest to przydatne, jeśli chcesz iterować po tablicy wartości i manipulować danymi w różnych lokalizacjach tablicy.

Teraz, gdy znasz już podstawy enumerate(), przejdź do praktyki – utwórz kilka tablic i spróbuj uruchomić funkcję enumerate() z różnymi danymi wejściowymi. W końcu programowanie to przede wszystkim praktyka. Ważne jest, aby dodać – programowanie (w szczególności nauka o danych) to także znajomość właściwych rzeczy, poza zwykłym ćwiczeniem. Musisz znaleźć połączenie tych dwóch – wiedzy i praktyki.

Jeśli jesteś nowicjuszem w tej dziedzinie i szukasz pomocy – upGrad Cię wspiera! Nasz Master of Science in Machine Learning i Artificial Intelligence działa we współpracy z IIIT-Bangalore i LJMU. Otrzymujesz wsparcie 1 na 1 od ekspertów branżowych, silną grupę studentów i wsparcie kariery 360 stopni.

Skontaktuj się z nami już dziś i rozwijaj swoją karierę!

Poprowadź rewolucję technologiczną napędzaną sztuczną inteligencją

MISTRZOWIE W NAUCE MASZYNOWEJ I SZTUCZNEJ INTELIGENCJI
Aplikuj teraz