תיקונים למחברות – שבוע 7

מחברת 1, 2 המעודכנות (החל מ־2020-06-15 בשעה 23:00) לא מכילות טעויות בינתיים.

מחברת 2

תיקון 1

תיעוד המחלקה PostOffice בתצורת Sphinx תראה כך:

    """A Post Office class. Allows users to message each other.

    :ivar int message_id: Incremental id of the last message sent.
    :ivar dict boxes: Users' inboxes.

    :param list usernames: Users for which we should create PO Boxes.
    """

מחברת 3

תיקון 1

כתוב:

הפעולה calculate_calories תחזיר את סכום הקלוריות של רכיבי המנה.

צריך להיות:

הפעולה get_total_calories תחזיר את סכום הקלוריות של רכיבי המנה.

תיקון 2

י make_move – גורמת לשחקן שתורו כעת להפעיל פעולת attack ללא פרמטרים.
אם הפעולה attack החזירה None, השחקן יבחר אויב חי אקראי מהזירה ויתקוף אותו.
בסוף הפעולה, התור מועבר לשחקן הבא.

יש לשנות את המילה None ל־False.

תיקון 3

באורטל קומבט 2 – הנוסחה לחישוב רמות תתוקן ל־ \frac{4 \cdot (L - 1)^{2.5}}{5}
(במקום L יבוא L - 1)

מחברת 4

תיקון 1

ההגדרה של start_point היא:

נקודה הממוקמת בחלק השמאלי עליון של המלבן (נקודת ההתחלה start_point).

תיקון 2

ב"מגדל קוביות":

ממשו גם את הפעולות get_height ו־get_width של שטח והיקף כפי שעשיתם בתרגיל הקודם.

צריך להיות:

ממשו גם את הפעולות get_surface ו־get_perimeter של שטח והיקף כפי שעשיתם בתרגיל הקודם.

5 לייקים

בקטנה, אבל שתשימו לב לתקן לפעם הבאה - מחלקת המוצר בצ’יקצ’וק מחליטה ממש הרבה :slight_smile:

image

לייק 1

תודה! אתקן :slight_smile:
זה קורה בד"כ אחרי שאני מעתיק תיקון של העורכת הלשונית ויוצר כפילות :man_facepalming:
יופץ מחר (אני מאמין) יחד עם המחברת הבאה

3 לייקים

אפרופו טעויות בתיעוד , יש טעויות קטנות בתיעוד במחברת 2 במחלקה PostOffice

במקום


            >>> po_box = PostOffice(['a', 'b'])
            >>> message_id = po_box.send('a', 'b', 'Hello!')
            >>> len(pobox['b'])
            1
            >>> message_id
            1

צריך להיות :

po_box = PostOffice(['a', 'b'])
message_id = po_box.send_message('a', 'b', 'Hello!')
len(po_box.boxes['b'])
message_id
לייק 1

לא מאוד קריטי, אבל Hello הופך ל-Hello World
image

וכאן - מחרוזת:
image

לייק 1

אותה טעות כמו במחברת 1 קיים במחברת 2. ב info_message(self) משתמשים ב path במקום ב self.

לייק 1


האם הנקודה המודגשת לא צריכה להיות (4,4)?

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

לייק 1

ה Importים לאורך מחברת 2 (random, string) נראים שלא בשימוש בכלל בקוד (ובלי קשר, גם לא בסדר הנכון). כנראה קוד שנשכח בעריכה?

לייק 1

תודה לכם, תיקנתי הכל.

במחברת 2, בתיעוד של Google Docstrings ושל NumPy Docstrings בפונקציה send_message המשתנה urgent מוגדר בתיעוד כ-urgency ומסוג str במקום urgent מסוג bool.
לא הכי קריטי כי אני בטוח שהרוב לא שמו לב

2 לייקים

את האמת שזה די חשוב, זו דוגמה מעולה לדוקומנטציה מטעה שזה רע מאוד :stuck_out_tongue:
תיקנתי

4 לייקים

אני לא בטוח שזו טעות, אבל:

:param str message_id: Incremental id of the last message sent.
:param str boxes: Users' inboxes.

לא אמור להיות int ו-dict?

לייק 1

צודק :slight_smile: תודה רבה, אתקן

לייק 1
def get_extension(self):
        """Return the extension of the filename.
        
        If there is no extension, return an empty string.
        """
        full_name = self.get_basename()
        filename, _, extension = full_name.rpartition(".")
        return extension

במקרה ואין סיומת לקובץ יוחזר שמו המלא ולא מחרוזת ריקה

לייק 1

תודה, תיקנתי ל־

    def get_extension(self):
        name = self.get_basename()
        i = name.rfind('.')
        if 0 < i < len(name) - 1:
            return name[i + 1:]
        return ''
def get_parts(path):
current_part = ""
for char in self.fullpath:
    if char in r"\/":
        yield current_part
        current_part = ""
    else:
        current_part = current_part + char
if current_part != "":
    yield current_part

הביטוי self.fullpath אמור להיות path?
מתוך הדוגמאות במחרוזות תיעוד מרובות שורות.

כנראה שכן, זה מועתק מהדוגמאות של מחלקות מהמחברת הקודמת ושם במקום path צריך להיות רשום self

לעולם לא נשנה שמות של מזהים (משתנים, פונקציות וכו’) – גם אם הם מופיעים בתחילת משפט.

לקח לי זמן להבין שהכוונה זה לא לעשות capitalization לשמות מזהים.

בכל אופן:
image

גם אלו הערות חשובות :slight_smile: אתייעץ עם דפי לגבי איך לבאר.

אתקן, תודה!

לייק 1