שתי שאלות-אחת כללית בנוגע להתניות במקרה של פונקציה

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


זה גם המקום לשאלה כללית יותר-איך אני עושה “חזור” כאשר אני רוצה לבטל פעולה שעשיתי? זה אפשרי?
דבר שני, אני ממש מסתבך בעניין ההתניות כאשר הם מופיעות בתוך פונקציה. הצלחתי אפילו “לדפוק” הוראות של המתכנת עצמו ועכשיו הם לא רצות יותר (כןכן, כישרון מיוחד). אז אני מצרף פה את הפקודה הזו ומאוד אשמח להסבר על מה הייתי צריך לעשות כדי שהדבר ירוץ
def give_me_numbers(number):
if number>2:
number= number + 1
else: number=number
return number
print(give_me_numbers(5))
כאן אני מקבל הודעת שגיאה.
ככלל, נראה שהבעיה העיקרית שלי היא בחוסר הבנה של מה בעצם עושה פקודת ההחזרה של הפונקציה (רטרן) כי כשהתבקשתי שהמחשב ייצור פונקציה שבה הוא מזהה את המספר הגדול יותר ומחזיר אותו, לא באמת הייתה לי בעיה לעשות את זה, רק בלי פקודת ההחזרה כך:
def bigger_number (number1, number2):
if number1>number2:
print(number1)
else:print(number2)
print(bigger_number(6,5))
אממה-אני מקבל תשובה נכונה בתוספת עקיצה קטנה של התוכנה
none
6
וזה אומר לי שלא הבנתי את זה עד הסוף לדעתי. כל כיוון או הסבר יתקבלו בברכה! תודה רבה מראש

לגבי השאלה הראשונה - אם תריץ את התא הזה (CTRL+Enter) זה אמור להסתדר. אם לא, תנסה להוריד את המחברות מחדש.

לגבי “חזור” - לחיצה על CTRL+Z כשאתה בתוך תא תבטל את הפעולה האחרונה שעשית (וימשיך לבטל ככל שתלחץ).

ה-return מסיים את הפעולה של הפונקציה, כל מה שיהיה אחרי return (שהפונקציה הפעילה) לא יעבוד.
ה-none שאתה מקבל הוא בעצם הדרך של הפונקציה להגיד - הפונקציה לא מחזירה אף ערך (היא מחזירה none).

תנסה לחשוב - מה ההבדל בין החזרת ערך (return), לבין הדפסה (print)?
תנסה לשחק עם שתי האפשרויות בתוך הפונקציה :slight_smile:

תודה! אתעמק בעניין ומקווה שאבין, אם לא אחזור לשאול. ערב טוב!