Python 3.10¶
صدر الإصدار Python 3.10.0 (النهائي) في 4 أكتوبر 2021. وقد عُرّفت ميزات الإصدار 3.10 في PEP 619 ويمكن العثور على وصف تفصيلي للتغييرات في ما الجديد في Python 3.10.
ميزات بناء الجملة الجديدة | الحالة | |
مطابقة الأنماط البنيوية: المواصفات | ||
مطابقة الأنماط البنيوية: الدافع والأساس المنطقي | ||
مطابقة الأنماط البنيوية: دليل تعليمي | ||
أصبح استخدام مديري السياق بين قوسين مسموحًا به رسميًا الآن | ||
ميزات جديدة في المكتبة القياسية | ||
إضافة فحص اختياري للطول إلى zip | ||
تحسينات المفسّر | ||
أرقام أسطر دقيقة لأدوات التصحيح والأدوات الأخرى | ||
ميزات الأنواع (typing) الجديدة | ||
السماح بكتابة أنواع الاتحاد بالصيغة X | Y | ||
الأسماء المستعارة الصريحة للأنواع | ||
متغيرات مواصفات المعاملات | ||
حالات الإهمال أو الإزالة أو التقييد المهمة | ||
اشتراط OpenSSL 1.1.1 أو أحدث | ||
إهمال وحدة distutils. | غير ذي صلة | |
إهمال العضو wstr في PyUnicodeObject والتحضير لإزالته. | غير ذي صلة | |
إزالة واجهات برمجة تطبيقات مُرمّز Py_UNICODE | غير ذي صلة | |
إضافة EncodingWarning اختياري | ||
تغييرات أخرى في اللغة:
أصبح للنوع | |
أصبحت العروض التي تعيدها | |
PEP 618: أصبح للدالة | |
لم تعد الدوال المدمجة ودوال الامتدادات التي تأخذ وسائط أعدادًا صحيحة تقبل | |
إذا أعادت | |
يمكن الآن استخدام تعبيرات الإسناد دون أقواس داخل قيم المجموعات الحرفية واستيعابات المجموعات، وكذلك في فهارس التسلسلات (لكن ليس في الشرائح). | |
أصبح للدوال سمة جديدة | |
أُضيفت دالتان مدمجتان جديدتان -- | |
أصبحت الطرق الساكنة ( | |
لم تعد التعليقات التوضيحية للأهداف المركبة (كل شيء بخلاف أهداف | |
أصبحت كائنات الأصناف والوحدات تنشئ الآن قواميس تعليقات توضيحية فارغة بشكل كسول عند الطلب. تُخزّن قواميس التعليقات التوضيحية في | |
أصبحت التعليقات التوضيحية المكوّنة من | |
أصبح استخدام المتغيرات غير المرتبطة و | |
أصبحت قيم تجزئة (hashes) قيم NaN لكل من النوع | |
سيُطلق استثناء | |
أصبح لاستثناءات |
التغييرات على الوحدات المدمجة:
إضافة الطريقة المفقودة | |
أصبح للطريقة | |
إضافة خطافات تدقيق (audit hooks) لـ | |
تتطلب وحدة hashlib الآن OpenSSL 1.1.1 أو أحدث. | |
تمتلك وحدة hashlib دعمًا أوليًا لـ OpenSSL 3.0.0. | |
أصبح البديل المكتوب بلغة Python بالكامل لـ | |
إضافة دعم | |
إضافة دالة جديدة | |
إضافة | |
إضافة | |
إضافة | |
أصبح الاستثناء | |
إضافة خيار لإنشاء مقابس MPTCP باستخدام | |
إضافة الخيار | |
تتطلب وحدة ssl الآن OpenSSL 1.1.1 أو أحدث. | |
تمتلك وحدة ssl دعمًا أوليًا لـ OpenSSL 3.0.0 وخيارًا جديدًا | |
أصبحت الدالة المُهمَلة واستخدام الثوابت المُهمَلة ينتج عنهما الآن | |
أصبحت وحدة ssl الآن تمتلك إعدادات افتراضية أكثر أمانًا. تُعطّل افتراضيًا الشيفرات التي تفتقر إلى السرية المستقبلية أو التي تستخدم MAC من نوع SHA-1. ويحظر مستوى الأمان 2 مفاتيح RSA و DH و ECC الضعيفة التي تقل عن 112 بت من الأمان. تتخذ | |
لم تعد البروتوكولات المُهمَلة SSL 3.0 و TLS 1.0 و TLS 1.1 مدعومة رسميًا. ولا تحظرها Python بشكل فعّال. إلا أن خيارات بناء OpenSSL وإعدادات التوزيعات وتصحيحات المورّدين ومجموعات الشيفرات قد تمنع نجاح المصافحة (handshake). | |
إضافة معامل timeout إلى الدالة | |
تستخدم وحدة ssl أنواع الكومة (heap-types) والتهيئة متعددة المراحل. | |
أُضيفت راية تحقق جديدة | |
إضافة السمة | |
إضافة | |
أصبحت | |
ملاحظات