פייתון/פייתון גרסה 3/לולאת for: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
Mathreturn (שיחה | תרומות)
Mathreturn (שיחה | תרומות)
שורה 115:
לולאת for שימושית מאוד יחד עם פונקצית range כאשר ממירים אותה לרשימה. [[פייתון/פייתון גרסה 3/רשימת פונקציות מערכת built-in|פונקצית range]] מייצרת טווח של מספרים בדילוגים על פי החלטת המשתמש. כאשר היא מוגדרת לתפקד כרשימה, לולאת for למעשה מקבלת רשימה עם טווח מספרים ומריצה על פי מספר האינדקס שלנו את פריט פריט מהרשימה.
 
נפתח את קובץ [[פייתון/פייתון גרסה 3/עבודה אינטראקטיבית או קובץ אצווה|האצווה]] וניצור קובץ חדש:.
 
<source lang = "python">
for a in range(5,10):
print(a)
 
</source>
 
האינדקס שלנו a עובר על הפריטים ברשימה. מאחר שהם טווח מספרים, פיתון מדפיסה כל פעם מחדש את '''ערך האינדקס'''.
 
===פניה אל מיקום האינדקס ברשימה===
====איטרציה על רשימה שאיבריה מיצגים את אורכה של רשימה אחרת====
נשם לב להבדילים:
 
<source lang = "python">
שורה 138 ⟵ 125:
for i in range(len(L)):
print (i)
 
0
1
שורה 144 ⟵ 130:
3
4
 
</source>
במקרה זה פייתון עוברת על '''אורך''' הרשימה ולא על הרשימה שלנו. אם ברשימה שלנו יש 5 איברים אורכה של הרשימה הוא חמש. כאשר מפעילים range על הספרה חמש נקבל את ערך האינדקסים המופעים לעיל.
 
====פניה אל ערך ברשימה====
<source lang = "python">
L=[4,3,36,434,55]
שורה 153 ⟵ 140:
for i in L:
print (i)
 
 
L
4
שורה 161 ⟵ 146:
434
55
</source>
 
או לחילופין,
 
<source lang = "python">
for a in range(5,10):
print(a)
 
</source>
 
האינדקס שלנו a עובר על הפריטים ברשימה. מאחר שהם טווח מספרים, פיתון מדפיסה כל פעם מחדש את '''ערך האינדקס'''.
פניה אל האיבר במיקום ה-i:
 
====פניה אל האיבר במיקום ה-i:====
באיטרציה הבאה אנו עוברים על רשימה מהספרה אפס עד שתים, ומבקשים מפייתון עבור כל אינדקס, לפנות אל הרשימה L במיקום של אותו אינדקס ולשנות אותו, על ידי הוספה אליו את המספר אחד.
<source lang = "python">
L=[5,2,3]
 
for i in range(len(L)):
print(i)
L[i]=L[i]+1
print("the list:",L)
 
>>>
0
1
2
the list: [6, 3, 4]
</source>
האינדקס במיקום האפס הוא 5. נוסיף אליו אחד ונקבל 6.
 
בדוגמה הבאה אנו מבקשים מפיתון לעבור על הערך של הפונקציה. ערכו של האיבר הראשון הוא 1. לאחר מכן אנו מבקשים מפיתון להוסיף לאינדקס שלנו אחד.
<source lang = "python">
L=[5,2,3]
 
for i in L:
print('the vaule of i:', i)
i = i+1
print('the vaule of i after Iteration: ',i)
print("the list:",L)
>>>
the vaule of i: 5
the vaule of i after Iteration: 6
the vaule of i: 2
the vaule of i after Iteration: 3
the vaule of i: 3
the vaule of i after Iteration: 4
the list: [5, 2, 3]
</source>
הרשימה שלנו במקרה זה אינה משתנה מאחר שלא פנינו אל ערך ברשימה על ידי פקודה <math>L[i]</math>. במקום השמנו את המשתנה i ושנינו את ערכו בכל איטרציה.
 
=====דוגמה נוספת =====
<source lang = "python">
L=[1,'a','b',2,'d',4,'e']
new=[]