Listy są jedną z najczęściej używanych struktur danych w Pythonie. Nadal używamy list w wielu różnych zastosowaniach, od rozwiązywania prostych problemów po złożone problemy. W Pythonie listy zastępują tablice takimi zaletami, jak:
- Dynamiczny rozmiar
- Może przechowywać elementy różnych typów danych na jednej liście
Możemy uzyskać dostęp do danych po prostu z list zgodnie z zamówieniem; w przeciwieństwie do zestawów, dane będą nieuporządkowane. Aby uzyskać dostęp do danych, możemy skorzystać z kilku sposobów iteracji po każdym elemencie listy. W tym samouczku omówiono wszystkie sposoby z przykładami.
1. Pętle
list1 = [3, 5, 7, 2, 4] count = 0 while (count <len(list1)): 1 print (list1 [count]) count="count" + < pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python.webp" alt="How to Iterate through a List in Python"> <p> <strong>Understanding:</strong> </p> <p>We created a list with a few elements. Initially, count = 0. We're printing the element at the 'count' index and incrementing the count in the while loop. When the count reaches the length of the list, the loop will be terminated, and all the elements will already be accessed.</p> <p> <strong>Mechanism:</strong> </p> <table class="table"> <tr> <td>count = 0</td> <td>list1 [0]</td> <td>3</td> </tr> <tr> <td>count = 1</td> <td>list1 [1]</td> <td>5</td> </tr> <tr> <td>count = 2</td> <td>list1 [2]</td> <td>7</td> </tr> <tr> <td>count = 3</td> <td>list1 [3]</td> <td>2</td> </tr> <tr> <td>count = 4</td> <td>list1 [4]</td> <td>4</td> </tr> <tr> <td>count = 5 = len (list1)</td> <td>-</td> <td>-</td> </tr> </table> <ul> <tr><td>Using for loop:</td> </tr></ul> <pre> list1 = [3, 5, 7, 2, 4] for i in list1: print (i) </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python-2.webp" alt="How to Iterate through a List in Python"> <p> <strong>Understanding:</strong> </p> <p>Using for-in, we accessed all the i's, the elements inside the list.</p> <ul> <tr><td>Using for and range:</td> </tr></ul> <pre> list1 = [3, 5, 7, 2, 4] length = len (list1) for i in range (0, len (list1)): print (list1 [i]) </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python-3.webp" alt="How to Iterate through a List in Python"> <p> <strong>Understanding:</strong> </p> <p>The range function helps the 'for' loop to iterate from 0 to the given list's length.</p> <p> <strong>Mechanism:</strong> </p> <table class="table"> <tr> <td>the range gives - 0</td> <td>list1 [0]</td> <td>3</td> </tr> <tr> <td>the range gives - 1</td> <td>list1 [1]</td> <td>5</td> </tr> <tr> <td>the range gives - 2</td> <td>list1 [2]</td> <td>7</td> </tr> <tr> <td>the range gives - 3</td> <td>list1 [3]</td> <td>2</td> </tr> <tr> <td>the range gives - 4</td> <td>list1 [4]</td> <td>4</td> </tr> </table> <ul> <li>The range function doesn't give the last element specified - len (list1) = 5 is not given.</li> </ul> <h2>2. Using List Comprehension</h2> <p>This is the simple and suggested way to iterate through a list in Python.</p> <p> <strong>Code:</strong> </p> <pre> list1 = [3, 5, 7, 2, 4] [print (i) for i in list1] print (' ') [print (list1 [i]) for i in range (0, len (list1))] print (' ') </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python-4.webp" alt="How to Iterate through a List in Python"> <p> <strong>Understanding:</strong> </p> <p>We can use for loops inside a list comprehension. We used the same for loops we used in the above examples but inside a list in a single line. This way, we can reduce the length of the code and also list comprehension is a very subtle and efficient way to put loops in lists.</p> <h2>3. Using enumerate():</h2> <p>The enumerate function converts the given list into a list of tuples. Another important fact about this function is that it keeps count of the iterations. This is a built-in function in Python.</p> <p> <strong>Code:</strong> </p> <pre> list1 = [3, 5, 7, 2, 4] for i, j in enumerate (list1): print ('index = ', i, 'value: ', j) </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python-5.webp" alt="How to Iterate through a List in Python"> <h2>4. Using lambda function and map():</h2> <p>These are anonymous functions. There is a function map () in Python that can accept a function as an argument, and it calls the function with every element in the iterable, and a new list with all the elements from the iterable will be returned.</p> <p> <strong>Code:</strong> </p> <pre> list1 = [3, 6, 1, 8, 7] result = list (map (lambda num: num, list1)) print (result) </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python-6.webp" alt="How to Iterate through a List in Python"> <p> <strong>Understanding:</strong> </p> <p>The lambda num: num is given as an input to the map function along with the list. The function will take every single element in the list, accept it, and then return it. The map () function will pass the list elements one by one to the lambda function to return the elements.</p> <h2>What if we want to Iterate Multi-dimensional Lists?</h2> <p>There is an inbuilt module in Python designed to perform operations on multi-dimensional lists.</p> <p> <strong>1. To get numpy:</strong> </p> <p>Check if Python and pip are installed by opening the cmd via search and typing the commands:</p> <p> <strong>Python -version</strong> </p> <p> <strong>Pip --version</strong> </p> <p>If both Python and PIP are present in our system, it is now time to install our library:</p> <p> <strong>2. Open cmd from the start menu</strong> </p> <p> <strong>3. Type the command</strong> </p> <h3>pip install numpy</h3> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python.webp" alt="How to Iterate through a List in Python"> <p>All the library packages, data, and sub-packages will be installed one after the other.</p> <p> <strong>Code:</strong> </p> <pre> import numpy list1 = numpy. arange (9) list1 = list1. reshape (3, 3) for x in numpy. nditer (list1): print (x) </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-tutorial/43/how-iterate-through-list-python-7.webp" alt="How to Iterate through a List in Python"> <p> <strong>Understanding:</strong> </p> <p>We imported the numpy module. Using the arrange method, we created an array with 9 elements. We accessed the list by reshaping it to 3 * 3 (rows * columns) using the reshape. Using the nditer function, we printed each element in the list.</p> <hr></len(list1)):>
Wyjście:
Zrozumienie:
Używając for-in, uzyskaliśmy dostęp do wszystkich i, czyli elementów listy.
list1 = [3, 5, 7, 2, 4] length = len (list1) for i in range (0, len (list1)): print (list1 [i])
Wyjście:
Zrozumienie:
Funkcja range pomaga pętli „for” w iteracji od 0 do długości podanej listy.
jak wydrukować Java
Mechanizm:
zakres daje - 0 | arkusz1 [0] | 3 |
zakres daje - 1 | arkusz1 [1] | 5 |
zakres daje - 2 | arkusz 1 [2] | 7 |
zakres daje - 3 | arkusz 1 [3] | 2 |
zakres daje - 4 | arkusz 1 [4] | 4 |
- Funkcja range nie podaje ostatniego określonego elementu - nie podano len (list1) = 5.
2. Używanie rozumienia list
Jest to prosty i sugerowany sposób iteracji po liście w Pythonie.
Kod:
list1 = [3, 5, 7, 2, 4] [print (i) for i in list1] print (' ') [print (list1 [i]) for i in range (0, len (list1))] print (' ')
Wyjście:
Zrozumienie:
zablokować aplikację na Androida
W rozumieniu listowym możemy używać pętli for. Użyliśmy tego samego dla pętli, których używaliśmy w powyższych przykładach, ale wewnątrz listy w jednym wierszu. W ten sposób możemy zmniejszyć długość kodu, a zrozumienie list jest bardzo subtelnym i skutecznym sposobem umieszczania pętli na listach.
3. Używanie enumerate():
Funkcja enumerate konwertuje podaną listę na listę krotek. Innym ważnym faktem dotyczącym tej funkcji jest to, że rejestruje ona liczbę iteracji. Jest to funkcja wbudowana w Pythonie.
Kod:
list1 = [3, 5, 7, 2, 4] for i, j in enumerate (list1): print ('index = ', i, 'value: ', j)
Wyjście:
4. Korzystanie z funkcji lambda i map():
Są to funkcje anonimowe. W Pythonie istnieje mapa funkcji (), która może przyjąć funkcję jako argument i wywołuje tę funkcję z każdym elementem iterowalnym, po czym zostanie zwrócona nowa lista ze wszystkimi elementami z iterowalnego.
Kod:
list1 = [3, 6, 1, 8, 7] result = list (map (lambda num: num, list1)) print (result)
Wyjście:
Zrozumienie:
Lambda num: num jest podawana jako dane wejściowe funkcji map wraz z listą. Funkcja pobierze każdy element z listy, zaakceptuje go i zwróci. Funkcja map() będzie przekazywać elementy listy jeden po drugim do funkcji lambda, aby zwrócić te elementy.
A co jeśli chcemy iterować listy wielowymiarowe?
W Pythonie istnieje wbudowany moduł przeznaczony do wykonywania operacji na listach wielowymiarowych.
1. Aby uzyskać numpy:
Sprawdź, czy Python i pip są zainstalowane, otwierając cmd poprzez wyszukiwanie i wpisując polecenia:
Wersja Pythona
Pip – wersja
leksykograficznie
Jeśli w naszym systemie obecny jest zarówno Python, jak i PIP, czas zainstalować naszą bibliotekę:
2. Otwórz cmd z menu Start
3. Wpisz polecenie
pip zainstaluj numpy
Wszystkie pakiety bibliotek, dane i podpakiety zostaną zainstalowane jeden po drugim.
Kod:
import numpy list1 = numpy. arange (9) list1 = list1. reshape (3, 3) for x in numpy. nditer (list1): print (x)
Wyjście:
Zrozumienie:
Zaimportowaliśmy moduł numpy. Korzystając z metody aranżacji, stworzyliśmy tablicę z 9 elementami. Uzyskaliśmy dostęp do listy, zmieniając jej kształt na 3 * 3 (wiersze * kolumny) za pomocą zmiany kształtu. Korzystając z funkcji nditer, wydrukowaliśmy każdy element listy.