קורס Python 3 שיעור פקודות תנאי


זה נושא דיון מלווה לערך המקורי ב- https://www.tocode.co.il/bundles/python/lessons/06-conditions

בהקשר לסעיף 3, ובמיוחד:

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

אולי כדאי להזכיר ש-int לא יכול להתמודד עם כל ערך של מחרוזת, אלא רק עם ערכים הניתנים ל"המרה מספרית". במקרה והמחרוזת היא טקסט אחר, תתקבל ValueError exception. לכן אם אנחכנו לא מבצעים ולידציה לערך שהתקבל מהמשתמש, עלינו להשתמש ב-try ו-except כדי להתמודד עם האפשרות הזו (אלא אם אנו מוכנים שהתוכנית תעוף באופן לא מסודר במצב הזה).

לייק 1

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

לא הבנתי את התוכנית הראשונה . סתם גיבריש נתן לי פלט של welcom master ?
איך זה מוגדר בתוכנית?

הי,

בתוכנית הראשונה אנחנו בודקים את אורך הקלט שהתקבל:

if len(name) > 4:
  print("welcome")

אם האורך גדול מ 4 ניכנס לבלוק הראשון שמיד מתחת ל if, ובגלל זה נקבל את ההדפסה welcome או בתוכנית שם זה היה welcome master. אם התנאי לא מתקיים נגיע לבלוק ה else ואז בתוכנית שבוידאו נקבל את ההדפסה השניה