שגיאות ברורות
פייתון יציג לנו שגיאות ברורות יותר ככה שנדע מה לתקן,
למשל חסר נקודותיים:
1 | a = 2 |
python 3.9
:
1 | PS code> py a.py |
python 3.10
:
1 | PS code> py a.py |
דוגמא נוספת - אם שכחנו את השווה השני במשפט בדיקה:
1 | if amountOfMilk = 2: |
Switch-case
זוהי תוספת גדולה לפייתון!
עד כה יכולנו לבדוק בעזרת if-elif-else
:
1 | messageType = Message.Type() |
במקום זה ניתן לכתוב עכשיו בעזרת match
ו-case
.
- כדי לבדוק כמה באותו התנאי ניתן להשתמש ב-
|
. - כדי להשתמש בברית מחדל משתמשים ב-Discard
_
.
דוגמא:
1 | messageType = Message.Type() |
ניתן להשתמש בזה גם בעזרת מחלקות:
1 | from dataclasses import dataclass |
הגדרת רמז לשני סוגי משתנה או יותר
הפיצ’ר הזה דומה מאוד לפיצ’ר בשפה TypeScript
.
אחד האופציות בשפות דינאמיות שפונקציות ייקבלו סוג משתנה אחד או יותר,
למשל זה נפוץ לומר שאנחנו רוצים גם מספרים שלמים וגם מספרים עשרוניים, אז בTypeScript
ניתן לעשות כך:
1 | function Do(myNumber: number | float){ |
פייתון הוסיפו את זה גם כן במקום להשתמש ב-Union
.
לפני:
1 | def square(number: Union[int, float]) -> Union[int, float]: |
אחרי:
1 | def square(number: int | float) -> int | float: |
הגדרת TypeAlias
ניתן להצהיר על סוגי משתנים לפני שימושם, כעת ניתן להגדיר זאת בצורה מפורשת.
לפני:
1 | MyType = 'ClassName' |
אחרי:
1 | MyType: TypeAlias = 'ClassName' |
רשימת השינויים הקטנים יותר גדולה ולכן לא אכתוב את כולם.
ניתן לצפות בהם כאן
אחד השינויים הגדולים יותר זה ה-switch-case
.
למרות שלפייתון יש הרבה עבודה כדי לסדר את ה-APIים שלה ולהביא אותה לשפה מודרנית לחלוטין,
היא מוכיחה את עצמה עם החידושים שהיא מכניסה ואני בטוח שהיא תישאר ל-20 שנה הקרובות לפחות!
פייתון 3.11 תצא בעתיד הקרוב ויש כבר גרסאות development שעובדות,
ניתן להתנסות כאן
תודה על הקריאה!