מה זה iterable?

תגיות:

שלום,
אני מנסה להבין מה זה iterable, משהו שניתן לעבור עליו? ערך שחי בתוך המבנה נתונים ונותן אפשרות לעבור?
תודה רבה

“נגדיר ערך כ־iterable אם ניתן לפרק אותו לכלל האיברים שלו.”

מזכיר לך נשכחות משבוע 2 מחברת 4

היי, יש על זה מחברת שלמה בשבוע 3 (מחברת 5).
ובכללי: טיפוס שניתן לעבור עליו לפי סדר

גם על כל string ניתן לעבור לפי סדר (על האותיות שבו), אני שואל מה ההקשר למבני נתונים כמו מילון למשל, שאפשר לעבור על הערכים שבו לפי סדר?

אם אני לא טועה, string הוא איטרבילי, מילון לא בטוחה, כי הסדר בו לא ניתן לשליטה והוא גם לא חשוב (לפי מה שאני יודעת!)

כתוב במפורש במחברות את התשובות לכל השאלות שעלו פה :slight_smile:
מילון הוא איטרבילי, וכשעוברים עליו למעשה עוברים על כל המפתחות שלו. דבר איטרבילי לא חייב לשמור על סדר מסוים

לייק 1

נכון שכתוב,
אז איטרבילי הוא כל דבר שניתן לעבור עליו בעצם?
אם כך מה לא איטרבילי?

למשל מספרים מסוג int או float הם לא איטרביליים

לייק 1

כן זה הגיוני, לא שייך לעבור על המספר 5, אין מה לעבור בו, וגם לא 100 על כל ספרותיו,
אבל נראה לי שכל מבנה אחר ניתן, מילה מורכבת מאותיות, כמובן מערך, רשימה, מילון,

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

2 לייקים

יוצא מכך שכל מה שהוא לא פרימיטיבי הוא איטרבילי