Listele sunt una dintre cele mai utilizate structuri de date din Python. Continuăm să folosim liste în multe aplicații diferite, de la rezolvarea de probleme simple la probleme complexe. În Python, listele înlocuiesc matricele cu avantaje precum:
- Dinamic în mărime
- Poate stoca articole de diferite tipuri de date într-o singură listă
Putem accesa datele pur și simplu din liste așa cum este comandat; spre deosebire de seturi, datele vor fi neordonate. Pentru a accesa datele, putem folosi mai multe moduri de a parcurge fiecare element dintr-o listă. Acest tutorial acoperă toate modalitățile cu exemple.
1. Bucle
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)):>
Ieșire:
Înţelegere:
Folosind for-in, am accesat toate i-urile, elementele din listă.
list1 = [3, 5, 7, 2, 4] length = len (list1) for i in range (0, len (list1)): print (list1 [i])
Ieșire:
Înţelegere:
Funcția range ajută bucla „for” să itereze de la 0 la lungimea listei date.
tcp vs udp
Mecanism:
intervalul dă - 0 | foaia 1 [0] | 3 |
intervalul dă - 1 | foaia 1 [1] | 5 |
intervalul dă - 2 | foaia 1 [2] | 7 |
intervalul dă - 3 | foaia 1 [3] | 2 |
intervalul dă - 4 | foaia 1 [4] | 4 |
- Funcția range nu oferă ultimul element specificat - len (list1) = 5 nu este dat.
2. Utilizarea listei de înțelegere
Aceasta este modalitatea simplă și sugerată de a itera printr-o listă în Python.
Cod:
list1 = [3, 5, 7, 2, 4] [print (i) for i in list1] print (' ') [print (list1 [i]) for i in range (0, len (list1))] print (' ')
Ieșire:
Înţelegere:
ce este structura în structura datelor
Putem folosi bucle for în interiorul unei liste de înțelegere. Am folosit același lucru pentru buclele pe care le-am folosit în exemplele de mai sus, dar în interiorul unei liste într-o singură linie. În acest fel, putem reduce lungimea codului și, de asemenea, înțelegerea listelor este o modalitate foarte subtilă și eficientă de a pune bucle în liste.
3. Folosind enumerate():
Funcția enumerate convertește lista dată într-o listă de tupluri. Un alt fapt important despre această funcție este că ține contorizarea iterațiilor. Aceasta este o funcție încorporată în Python.
Cod:
list1 = [3, 5, 7, 2, 4] for i, j in enumerate (list1): print ('index = ', i, 'value: ', j)
Ieșire:
4. Folosind funcția lambda și map():
Acestea sunt funcții anonime. Există o hartă a funcțiilor () în Python care poate accepta o funcție ca argument și apelează funcția cu fiecare element din iterabil și va fi returnată o nouă listă cu toate elementele din iterabil.
Cod:
list1 = [3, 6, 1, 8, 7] result = list (map (lambda num: num, list1)) print (result)
Ieșire:
Înţelegere:
Numărul lambda: num este dat ca intrare în funcția de hartă împreună cu listă. Funcția va prelua fiecare element din listă, îl va accepta și apoi îl va returna. Funcția map () va transmite elementele listei unul câte unul la funcția lambda pentru a returna elementele.
Ce se întâmplă dacă vrem să repetăm liste multidimensionale?
Există un modul încorporat în Python conceput pentru a efectua operații pe liste multidimensionale.
1. Pentru a deveni numpy:
Verificați dacă Python și pip sunt instalate deschizând cmd-ul prin căutare și tastând comenzile:
Versiunea Python
Pip --versiune
matrice sortată în java
Dacă atât Python, cât și PIP sunt prezente în sistemul nostru, acum este timpul să ne instalăm biblioteca:
2. Deschide cmd din meniul Start
3. Tastați comanda
pip install numpy
Toate pachetele de bibliotecă, datele și subpachetele vor fi instalate unul după altul.
Cod:
import numpy list1 = numpy. arange (9) list1 = list1. reshape (3, 3) for x in numpy. nditer (list1): print (x)
Ieșire:
Înţelegere:
Am importat modulul numpy. Folosind metoda arrange, am creat o matrice cu 9 elemente. Am accesat lista reformând-o la 3 * 3 (rânduri * coloane) folosind remodelarea. Folosind funcția nditer, am tipărit fiecare element din listă.