פעולות מסיימות בלולאות pass, continue, break

March 14, 2019

פעולות מסיימות בלולאות pass, continue, break

לולאות (loops) מסוג while או for למשל, ממשיכות לרוץ (לעיתים לנצח) אלא אם מתקיים תנאי שמפסיק אותן. בפייתון קיימים כמה הוראות המתייחסות ללולאות, אחת מהן נקראת pass והיא לא עושה שום דבר מלבד למלא מקום ריק אולי על מנת בהמשך לבצע פעולה ממשית במקומה. הפקודה continue מבקשת מהלולאה לדלג לפריט הבא בתור בלי לעשות דבר, והפקודה האחרונה נקראת break והיא מסיימת את עבודת הלולאה באופן שהיא לא ממשיכה יותר לרוץ.

 

lista=[1,2,3,4,5,"banana"]

for item in lista:

    if item==2:

        pass

    if item==3:

        continue

    if item==5:

        break

    else:

        print(item)

 

>>>

1

2

4

 

התוכנית למעלה יוצרת רשימה של המספרים 1 עד 5 ובסופה גם פריט אקזוטי, המילה banana.

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

המספר 1 אינו נלכד באף אחד מהתנאים (if) ולכן הוא מודפס.

המספר 2 נלכד בתנאי if item==2 אבל ההוראה pass לא עושה שום דבר מלבד למלא את החלל מתחת ל- if )   if  בלא הוראה מתחת יחשב לשגיאה) ולכן התוכנית ממשיכה לרוץ כסדרה ומדפיסה את המספר 2.

המספר 3 נלכד בתנאי if item==3 וכאן ההוראה היא continue כלומר הלולאה ממשיכה לפריט הבא ברשימה (המספר 4) מבלי לבצע את השורות שמתחת, ולכן גם לא מדפיסה את המספר 3.

המספר 4 אינו נלכד באף תנאי ולכן מודפס.

המספר 5 נלכד בתנאי if item==5 וכאן ההוראה היא break כלומר, לסיים מיידית את עבודת הלולאה הזאת (מסוג for) ולכן הלולאה לא ממשיכה לשורות למטה (ולא מדפיסה את המספר 5) וגם לא ממשיכה לרוץ על פריטים נוספים ברשימה והמילה banana בסוף הרשימה לא זוכה להיות מודפסת כלל.

Please reload

Please reload

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