מה ההבדל בין לולאה עבור ותוך כדי זמן בפייתון?


תשובה 1:

לולאה

>>> מספרים = [1,2,3,4,5,6,7,8,9,10]
>>> # לולאה
...
>>> לכל אחד במספרים:
... אם כל% 2 == 0:
... הדפס כל אחד
... אחרת:
... לעבור
...
2
4
6
8
10

לולאה בזמן

>>> מספרים = [1,2,3,4,5,6,7,8,10]
>>> עבור אני בספריות:
... בזמן שאני> 5:
... הדפס אני
...             לשבור
...
6
7
8
10

בזמן לולאה

>>> מספרים = 0
>>>
>>> תוך מספר <= 10:
... הדפס מספרים
... לא + = 1
...
0
1
2
3
4
5
6
7
8
9
10

בעוד לולאות, כמו ה- ForLoop, משמשות לחזרה על קטעי קוד - אך בניגוד לולאת for, לולאת ה- while לא תפעל n פעמים, אך עד שתנאי מוגדר כבר לא מתקיים. אם התנאי שקר בתחילה, גוף הלולאה לא יבוצע כלל.

תודה שקראת.


תשובה 2:

A לולאות חוזרות (לולאות) מעל אלמנטים של איטרציה, ואילו לולאת זמן לולאת עד שמצב לא נכון, למשל:

>>> עבור x ב [1, 2, 3]:
... הדפס (x)
1
2
3
>>> x = 1
>>> בעוד x <4:
... הדפס (x)
... x + = 1
1
2
3

אלה עושים את אותו הדבר בדיוק, לעומת זאת, הלולאה for היא יותר פיתונית, וכך השיטה שעליך להשתמש בה.


תשובה 3:

בעוד לולאות ועבור לולאות דומות בפיתון. שניהם עושים את הדברים הבאים:

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

הנה ההבדל: בלופ זמן, מצב הבדיקה הוא פשוט התנאי שצוין כמו "האם אני פחות מ- n?"

בלולאה למצב, התנאי המרומז הוא "האם ביצענו את הלולאה פעם אחת עבור כל אלמנט באוסף (או סדרה שנוצרה)?"

לולאת ה- Python "for" היא באמת לולאה "לכל אחד" ... היא מבצעת את בלוק ההצהרה פעם אחת עבור כל אלמנט באוסף. יש לו גם משתנה לולאה, שמתעדכן להתייחס לאלמנט שונה במהלך כל מחזור לולאה. אז אם יש לי רשימה:

beatles_list = ['ג'ון', 'פול', 'ג'ורג' ", 'רינגו'

אז אוכל להדפיס כל ביט עם הדברים הבאים:

לשחקן ב Beatles_list:
    הדפס (נגן)

תשובה 4:

לולאה בפיתון משמשת לריפוד מעל אלמנטים ברשימה, tuple, מילון

למשל

כדי להדפיס את כל האלמנטים ברשימה

מספר = [1,2,3,4,5,6]
למספר במספר:
    הדפס (מספר)

לולאת זמן משמשת לביצוע משימה מסוימת כל עוד התנאי נשאר נכון

למשל

מספר = 0
ואילו מספר <10:
    הדפס ('אני שמח')
    מספר + = 1

קוד זה ימשיך להדפיס אני שמח כל עוד המספר הוא פחות מ -10

אבל בקוד בעולם האמיתי אתה יכול לשים שם כמו keep_playing () במקום פשוט להדפיס אני שמח,