Python 3.7

תכונות חדשות:

תכונה

סטטוס

PEP 538

כפיית ה-locale הישן של C ל-locale מבוסס UTF-8

PEP 539

C-API חדש לאחסון מקומי-להליך (Thread-Local Storage) ב-CPython

PEP 540

מצב UTF-8

PEP 552

pyc דטרמיניסטי

PEP 553

breakpoint() מובנית

PEP 557

Data Classes

PEP 560

תמיכת ליבה למודול typing ולטיפוסים גנריים

PEP 562

__getattr__ ו-__dir__ ברמת המודול

חלקי

PEP 563

הערכה דחויה של הערות (annotations)

PEP 564

פונקציות זמן ברזולוציית ננו-שנייה

חלקי [1]

PEP 565

הצגת DeprecationWarning ב-__main__

PEP 567

משתני הקשר (Context Variables)

שינויים נוספים בשפה:

async ו-await הן כעת מילות מפתח שמורות

הושלם

אובייקטי dict חייבים לשמר את סדר ההכנסה

כעת ניתן להעביר יותר מ-255 ארגומנטים לפונקציה; לפונקציה יכולים כעת להיות יותר מ-255 פרמטרים

bytes.fromhex() ו-bytearray.fromhex() מתעלמות כעת מכל רווח לבן ב-ASCII, ולא רק מתווי רווח

str, bytes ו-bytearray קיבלו תמיכה במתודה החדשה isascii(), שניתן להשתמש בה כדי לבדוק אם מחרוזת או בתים מכילים רק את תווי ה-ASCII

ImportError מציגה כעת את שם המודול ואת נתיב ה-__file__ של המודול כאשר from ... import ... נכשל

ייבואים מעגליים הכוללים ייבואים מוחלטים עם קישור תת-מודול לשם נתמכים כעת

object.__format__(x, '') שקולה כעת ל-str(x) במקום ל-format(str(self), '')

כדי לתמוך טוב יותר ביצירה דינמית של עקבות מחסנית (stack traces), ניתן כעת ליצור מופע של types.TracebackType מקוד Python, והתכונה tb_next בעקבות ניתנת כעת לכתיבה

בעת השימוש במתג -m, sys.path[0] מורחב כעת מיד לנתיב הספרייה ההתחלתי המלא, במקום להישאר כספרייה ריקה (מה שמאפשר ייבואים מספריית העבודה הנוכחית בזמן שבו מתרחש ייבוא)

ניתן להשתמש באפשרות החדשה -X importtime או במשתנה הסביבה PYTHONPROFILEIMPORTTIME כדי להציג את התזמון של כל ייבוא מודול

שינויים במודולים מובנים:

asyncio

רב מספור

gc

תכונות חדשות כוללות gc.freeze(), gc.unfreeze(), gc-get_freeze_count

math

math.remainder() נוספה לממש שארית בסגנון IEEE 754

re

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

sys

sys.breakpointhook() נוספה. sys.get(/set)_coroutine_origin_tracking_depth() נוספה

time

בעיקר עדכונים לתמיכה ברזולוציית ננו-שנייה ב-PEP564, ראו לעיל

הערות