עבור לולאה בפיתון. תחביר, איטרציה של רשימה, הפסקה, המשך ותכונות אחרות

Цikl עבור python i מחזור בעוד - הצהרות תוֹכנָה שפה, כלומר: מפעילי איטרציה, תןing לחזור על הקוד מספר נתון הזמן.

Цикл עבור - сמונית

כפי שכבר הוסבר, גinclude for ב-Python הוא איטרטור המבוסס עלй במחזורזהות. האם הוא מעשים על ידי אלמנטים tuple и רשימה, אוצר מילים מפתחות ו אַחֵר חפצים הניתנים לחזרה.

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

עבור ב: else:      

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

לולאה פשוטה ל-Python עם דוגמה ספציפית:

>>> שפות = ["C", "C++", "Perl", "Python"] >>> עבור x בשפות: ... print(x) ... C C++ Perl Python >>>

הבלוק האחר מיוחדה'. אם מתכנתыעובד с פרל מוכרы איתו, זֶה למי שמתקשר с C ו-C++ — זהו חידוש. מבחינה סמנטית זה פונקציות тזהה תוך לולאה.

מבוצע רק כאשר הלולאה לא "נעצרת" על ידי הצהרת break. כלומר, הוא מבוצע רק לאחר שכל האלמנטים עברו ברצף שצוין.

אופרטור הפסקה בפיתון - הפסקה

אם לתוכנית יש לולאה for הכרחי להפריעמה היא הצהרת הפסקה, he להשליםזה הולךו התוכנית תזרים יצטרך חשבוןלהיות לְלֹא הפעלה מאחר.

לעתים קרובות יותר לשבור ביטויים בפיתוןuyutsya עם הצהרות מותנות.

edibles = ["צלעות", "כופתאות","ביצים","אגוזים"] לאוכל במאכלים: if food == "כופתאות": print("אני לא אוכל כופתאות!") break print("נהדר, טעים " + אוכל) else: print("טוב שלא היו כופתאות!") print("הארוחה הסתיימה.")

אם אתה מפעיל את הקוד הזה, אתה מקבל את התוצאה הבאה:

צלעות נהדרות וטעימות. אני לא אוכל כופתאות! ארוחת הערב הסתיימה.

אנו מסירים "כופתאות" מרשימת הנתונים הקיימת ומקבלים:

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

אופרטור python skip – המשך

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

edibles = ["צלעות", "כופתאות","ביצים","אגוזים"] לאוכל במאכלים: if food == "כופתאות": print("אני לא אוכל כופתאות!") continue print("נהדר, טעים " + אוכל) # זה יכול להיות קוד להנאה מאוכל :-) else: print("אני שונא כופתאות!") print("ארוחת הערב נגמרה.")

בשורה התחתונה:

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

איטרציה על רשימות עם הפונקציה range().

אם אתה רוצה לגשת לאינדקסים של רשימה, לא ברור כיצד להשתמש בלולאת for למטרה זו. אפשר לגשת לכל האלמנטים, אבל האינדקס של האלמנט יישאר בלתי נגיש. עם זאת, קיימת שיטה לגישה הן לאינדקס של האלמנט והן לאלמנט עצמו. לשם כך, הפונקציה משמשת range() בשילוב עם פונקציית האורך len():

fibonacci = [0,1,1,2,3,5,8,13,21] עבור i in range(len(fibonacci)): print(i,fibonacci[i])

לקבל:

0 0 1 1 2 1 3 2 4 3 5 5 6 8 7 13 8 21 XNUMX

תשומת הלב! כאשר מיושם len() к list or tuple, מתקבל המספר המתאים של אלמנטים של הרצף הנתון.

קשיים באיטרציה על רשימות

בעת איטרציה על רשימה, מומלץ להימנע מדינאמיקה של רשימה בגוף הלולאה. לשם הבהירות, אנו יכולים להציע את האפשרות הבאה:

colors = ["אדום"] עבור i בצבעים: if i == "אדום": צבעים += ["שחור"] if i == "שחור": צבעים += ["לבן"] הדפס (צבעים)

מה קורה בעת הגשת הבקשה print(colours)?

['אדום', 'שחור', 'לבן']

כדי להימנע מכך, מומלץ ליצור אינטראקציה עם העותק באמצעות פרוסות, כמו בדוגמה למטה:

colors = ["אדום"] עבור i בצבעים[:]: if i == "אדום": צבעים += ["שחור"] if i == "שחור": צבעים += ["לבן"] print(colours) )

התוצאה:

['אדום שחור']

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

מנה בפיתון 3

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

עבור counter, value in enumerate(some_list): print(counter, value)

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

my_list = ['apple', 'banana', 'cherry', 'peach'] for c, value in enumerate(my_list, 1): print(c, value) # תוצאה: # 1 apple # 2 banana # 3 cherry # 4 אפרסקים

השאירו תגובה