logo

כיצד לחזור על רשימה ב- Python

רשימות הן אחד ממבני הנתונים הנפוצים ביותר ב- Python. אנו ממשיכים להשתמש ברשימות ביישומים רבים ושונים, מפתרון בעיות פשוטות ועד בעיות מורכבות. ב-Python, רשימות מחליפות מערכים ביתרונות כמו:

  1. דינמי בגודל
  2. יכול לאחסן פריטים מסוגי נתונים שונים ברשימה אחת

אנו יכולים לגשת לנתונים פשוט מרשימות לפי הזמנה; שלא כמו בסטים, הנתונים לא יהיו מסודרים. כדי לגשת לנתונים, אנו יכולים להשתמש במספר דרכים כדי לחזור על כל אלמנט ברשימה. הדרכה זו מכסה את כל הדרכים עם דוגמאות.

1. לולאות

    שימוש בלולאת while:
 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&apos;re printing the element at the &apos;count&apos; 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&apos;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 &apos;for&apos; loop to iterate from 0 to the given list&apos;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&apos;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 (&apos;
&apos;) [print (list1 [i]) for i in range (0, len (list1))] print (&apos;
&apos;) </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 (&apos;index = &apos;, i, &apos;value: &apos;, 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)):>

תְפוּקָה:

כיצד לחזור על רשימה ב- Python

הֲבָנָה:

באמצעות for-in, ניגשנו לכל ה-i, האלמנטים בתוך הרשימה.

    שימוש עבור וטווח:
 list1 = [3, 5, 7, 2, 4] length = len (list1) for i in range (0, len (list1)): print (list1 [i]) 

תְפוּקָה:

כיצד לחזור על רשימה ב- Python

הֲבָנָה:

פונקציית הטווח עוזרת ללולאת ה'for' לחזור מ-0 לאורך הרשימה הנתונה.

כריכה קשה לעומת כריכה רכה

מַנגָנוֹן:

הטווח נותן - 0 גיליון1 [0] 3
הטווח נותן - 1 גיליון1 [1] 5
הטווח נותן - 2 גיליון1 [2] 7
הטווח נותן - 3 גיליון1 [3] 2
הטווח נותן - 4 גיליון1 [4] 4
  • הפונקציה range לא נותנת את האלמנט האחרון שצוין - len (list1) = 5 לא נתון.

2. שימוש בהבנת רשימה

זוהי הדרך הפשוטה והמוצעת לחזור על רשימה ב- Python.

קוד:

 list1 = [3, 5, 7, 2, 4] [print (i) for i in list1] print (&apos;
&apos;) [print (list1 [i]) for i in range (0, len (list1))] print (&apos;
&apos;) 

תְפוּקָה:

כיצד לחזור על רשימה ב- Python

הֲבָנָה:

repl ב-java

אנחנו יכולים להשתמש עבור לולאות בתוך הבנת רשימה. השתמשנו באותו עבור לולאות שהשתמשנו בהן בדוגמאות לעיל אבל בתוך רשימה בשורה אחת. כך, נוכל לצמצם את אורך הקוד וגם הבנת הרשימות היא דרך מאוד עדינה ויעילה לשים לולאות ברשימות.

3. שימוש ב-enumerate():

פונקציית ה-enumerate ממירה את הרשימה הנתונה לרשימה של tuples. עובדה חשובה נוספת לגבי פונקציה זו היא שהיא שומרת ספירה של האיטרציות. זוהי פונקציה מובנית ב- Python.

קוד:

 list1 = [3, 5, 7, 2, 4] for i, j in enumerate (list1): print (&apos;index = &apos;, i, &apos;value: &apos;, j) 

תְפוּקָה:

כיצד לחזור על רשימה ב- Python

4. שימוש בפונקציית lambda ומפה():

אלו פונקציות אנונימיות. יש מפת פונקציות () ב-Python שיכולה לקבל פונקציה כארגומנט, והיא קוראת לפונקציה עם כל אלמנט באיטרבל, ורשימה חדשה עם כל האלמנטים מהאיטרבל תוחזר.

קוד:

 list1 = [3, 6, 1, 8, 7] result = list (map (lambda num: num, list1)) print (result) 

תְפוּקָה:

כיצד לחזור על רשימה ב- Python

הֲבָנָה:

ה-lambda num: num ניתן כקלט לפונקציית המפה יחד עם הרשימה. הפונקציה תיקח כל רכיב בודד ברשימה, תקבל אותו ואז תחזיר אותו. הפונקציה map () תעביר את רכיבי הרשימה בזה אחר זה לפונקציית lambda כדי להחזיר את האלמנטים.

מה אם נרצה לחזור על רשימות רב-ממדיות?

ישנו מודול מובנה ב-Python שנועד לבצע פעולות ברשימות רב-ממדיות.

1. כדי להתעצבן:

בדוק אם Python ו-pip מותקנים על ידי פתיחת ה-cmd באמצעות חיפוש והקלדת הפקודות:

פייתון -גרסה

Pip --גרסה

אם גם Python וגם PIP קיימים במערכת שלנו, הגיע הזמן להתקין את הספרייה שלנו:

dhl אומר מה

2. פתח את cmd מתפריט התחל

3. הקלד את הפקודה

pip להתקין numpy

כיצד לחזור על רשימה ב- Python

כל חבילות הספרייה, הנתונים וחבילות המשנה יותקנו בזו אחר זו.

קוד:

 import numpy list1 = numpy. arange (9) list1 = list1. reshape (3, 3) for x in numpy. nditer (list1): print (x) 

תְפוּקָה:

כיצד לחזור על רשימה ב- Python

הֲבָנָה:

ייבאנו את המודול numpy. בשיטת הסדר יצרנו מערך עם 9 אלמנטים. ניגשנו לרשימה על ידי עיצוב מחדש ל-3*3 (שורות *עמודות) באמצעות הצורה מחדש. באמצעות הפונקציה nditer, הדפסנו כל אלמנט ברשימה.