רעננו את הדף והקליקו למעבר לנושא הבא:

range

פעולת range

פעמים רבות משלבים את פקודת for עם פקודה אחרת בשם range ו ונראה מה פקודה זו מבצעת (הגם שהמונח פקודה הוא לא מדויק בהמשך נלמד מה בדיוק היצור הזה) –


for num in range(5):

print (num)

>>>

0

1

2

3

4

ניתן להתייחס אל פקודת ה- range כאובייקט מיוחד המייצר בכל פעם מספר אחד בטווח המספרים מ- 0 ועד למספר שנקבנו בו בפקודת ה- range (לא כולל את המספר עצמו) – תכונה זו נקראת iteration ופקודת rang מייצרת איטרטור (iterator -אני לא אחראי לשמות). ניתן לקבוע מהיכן תתחיל הספירה, מתי היא תפסיק ובאלה קפיצות –


for num in range(1,10,2):

print (num)

>>>

1

3

5

7

9


בתוכנית למעלה ביקשנו להדפיס את המספרים החל מהמספר 1 (לא מאפס) ועד 10 (לא כולל 10) בקפיצות של 2.

אפשר לעשות דברים יותר מורכבים –


lista=["a","b","c","d"]

for i in range (len(lista)):

print (lista[ i ])

>>>

a

b

c

d

התוכנית למעלה מבצעת לולאת for יחד עם פקודת range שבמקום פרמטר מספרי הכנסנו ל- range את אורך הרשימה (len(lista שהוא במקרה הזה שווה ל – 4 וכך הצלחנו לגרום לתוכנית להדפיס את איברי הרשימה, החל מ- lista[0] ועד lista[3] . כעת גם אם נוסיף איברים לרשימה ואורכה יתארך, התוכנית עדיין תעבוד.

אפשר להשתמש בפקודת range בשילוב עם הפקודה list על מנת לייצר רשימות מספרים מהירות –


lista=list(range(10))

print (lista)

>>>

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Related Posts

See All