שיטות עבודה מומלצות להצהרות תנאי בפייתון

שיטות עבודה מומלצות להצהרות תנאי בפייתון

מאמר זה מסביר את שיטות העבודה המומלצות להצהרות תנאי בפייתון.

YouTube Video

שיטות עבודה מומלצות להצהרות תנאי בפייתון

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

השתמש בביטויים מותנים מפורשים

ביטויים מותנים צריכים להיות תמציתיים ומפורשים. לדוגמה, הימנע מהצהרות ארוכות כמו הבאות:.

1# Bad Example
2if condition == True:
3    pass
4
5# Good Example
6if condition:
7    pass

בפייתון, ניתן לציין שתנאי הוא נכון על ידי כתיבת if condition:.

שילוב של תנאים מרובים

כאשר משלבים תנאים מרובים, השתמש ב-and או or. עם זאת, כאשר הביטויים המותנים נעשים מורכבים, הקריאות עשויה לרדת, לכן שקול את ההתאמות הבאות:.

 1# Complex condition
 2if (age > 18 and age < 65) or (is_student and age > 15):
 3    pass
 4
 5# Improving readability
 6is_working_age = 18 < age < 65
 7is_eligible_student = is_student and age > 15
 8
 9if is_working_age or is_eligible_student:
10    pass

על ידי פיצול תנאים והקצאתם למשתנים ניתן לשפר את הקריאות.

הבן Truthy ו-Falsy

בפייתון, הערכים הבאים נחשבים כ-False:.

  • אין
  • שקר
  • המספר 0 (כולל 0.0)
  • רצפים ריקים (לדוגמה, [], "", ())
  • מיפויים ריקים (לדוגמה, {})

שימוש בזה יכול לעזור לפשט את הביטויים המותנים שלך.

1# Bad Example
2if len(items) > 0:
3    pass
4
5# Good Example
6if items:
7    pass

שימוש נכון ב-elif ו-else

כאשר מעריכים תנאים מרובים, השתמש ב-elif. השתמש ב-else כדי להגדיר התנהגות ברירת מחדל בסוף.

1if score >= 90:
2    grade = "A"
3elif score >= 80:
4    grade = "B"
5elif score >= 70:
6    grade = "C"
7else:
8    grade = "F"

הערה:

  • השימוש ב-else אינו חובה. אם כל התנאים מכוסים, אפשר לדלג על כך.
  • שימו לב לסדר של הביטויים התנאים וארגנו אותם בצורה הגיונית וללא מיותרות.

הגבילו את עומק ההשקעות

השקעה עמוקה של תנאי if מקשה על קריאת הקוד. השוו את הדוגמאות הבאות.

 1# Bad Example
 2if user.is_authenticated:
 3    if user.has_permission:
 4        if resource.is_available:
 5            access_resource()
 6
 7# Good Example
 8if not user.is_authenticated:
 9    return
10if not user.has_permission:
11    return
12if not resource.is_available:
13    return
14
15access_resource()

שימוש בחזרות מוקדמות יכול להפחית השקעה ולעשות את הקוד תמציתי יותר.

הימנעו משימוש בתנאי if על שורה אחת

למרות שניתן לכתוב תנאי if על שורה אחת, זה עלול להפחית קריאות.

1# Bad Example
2if condition: do_something()
3
4# Good Example
5if condition:
6    do_something()

השימוש בתנאי if על שורה אחת מקובל לתנאים או פעולות קצרות, אך הימנעו מקוד מיותר.

מטמון ביטויים תנאים

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

1# Bad Example
2if expensive_function() and another_expensive_function():
3    pass
4
5# Good Example
6result1 = expensive_function()
7result2 = another_expensive_function()
8if result1 and result2:
9    pass

סיכום

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

תוכלו לעקוב אחר המאמר שלמעלה באמצעות Visual Studio Code בערוץ היוטיוב שלנו. נא לבדוק גם את ערוץ היוטיוב.

YouTube Video