מחברת 7 - מיקומים

אני דיי מתפדח לשאול כאן את השאלה הזו אחרי כל הפונקציות שכבר עברתי, ואולי פשוט מאוחר וצריך לחכות למחר אבל
אשמח להבין, אם מישהו ער, למה אני לא מצליח להשים את len_1 בפונקציה, או בכלל לחשוב len לlist_of_lists בתוך הפונקציה

עריכה: וואו, לגמרי.

נסה לטפל בנושא ההזחות
ועל הדרך תוריד/תוסיף רווחים זה יעשה סדר בעין

לייק 1

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


ניסיתי דברים שונים עם הפסיקים והסוגריים, לא עובד לי.

קודם כל len() היא פעולה על רשימה, או מחרוזת.
תנסה לשנות את הסוגריים המרובעות [] לעגולות () אחרי הפונקציה len.
תגיד מה יצא

אותו דבר… :pensive:

צלם מה הבעיה שקופצת :slight_smile:

למה את עושה return על התנאי הראשון ולא print?
תשנה אותו להדפס, ואת ה-return בסוף תמחק גם

@orronai

הפעם אני דווקא לא מסכימה עם התגובה. הסיבה שיש שם return היא כדי שבמקרה זה לא ייבדקו בכלל התנאים האחרים ולא נדפיס yes אם הקלט לא חוקי אך מקיים חלק מהתנאים - או גרוע מכך נזרוק שגיאה אם הרשימה קצרה מדי וננסה לגשת לאינדקס לא קיים :slight_smile:

בשביל זה קיים elif.
return הוא לא פיתרון שבגלל שאנחנו לא יודעים את הערך אז נשתמש כל פעם ב-return.
זה מראה על חוסר הבנה

תודה :slightly_smiling_face: עובד לי.
יהיה שיעור שמלמד על הerrors השונים שנוכל לקלוט יותר מהר מה הבעיה ולפתור בעצמנו?
הקודים נהיים ארוכים יותר וקל לפספס דברים גם כשממש מתרכזים :sweat_smile:

@orronai

לא מסכימה איתך, אני חושבת שצריך לפצל את השורה הזו להדפסה ול-return ריק. בעיניי חבל להשתמש ב-elif ולהזיח את כל הקוד עוד טאב. אני בטח לא חושבת שזה מעיד על חוסר הבנה, מקסימום על עיצוב קוד שונה. אבל נסכים שלא להסכים בעניין :slight_smile:

לא תהיה פה עוד אף הזחה - במקום כל שאר ה-if’ים שבאים אחרי התנאי בדיקה הראשון יבואו elf’ים.
בכל מקרה שימוש ב-return כל פעם כדי לסיים קוד בעייני הוא שגוי, אבל עוד פעם - אין דרך אחת לפתור בעיות
אגב, כל הכבוד על העזרה שאת נותנת

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

המניעה מלעשות elifים (אחרת אני מסכימה עם האמירה שה-return אינו נחוץ) היא שאנחנו רוצים להיכנס לכל אחד ואחד מהתנאים שמתקיים ולא רק לאחד מהם, ולכן הם חייבים להיות כל אחד if בפני עצמו :slight_smile:

אז אם את רוצה להיכנס לדקויות, לעשות else אחרי ה-if הראשון וכל שאר ה-if’ים יהיו בתוך ה-else.
אז כן יהיו עוד הזחות כמו שאמרת, אבל הקוד יראה יותר מסודר מאשר return שלא עושה כלום

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

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

הסביבה הזו פה כדי שנלמד. תהיו פתוחים לרעיונות של אחרים ובעיקר תקראו הרבה בחוץ כדי לראות צורות מחשבה נוספות :slight_smile: אנחנו כאן כדי לתרום מהידע שלנו, אם נוכל לעזור.

לייק 1