الوحدة pprint‎ في بايثون

من موسوعة حسوب
< Python
مراجعة 07:22، 20 أغسطس 2018 بواسطة Mohammed Taher (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:الوحدة <code>pprint‎</code> في بايثون}}</noinclude> تتيح وحدة pprint إمكانية طباعة بنى البيانات...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)
اذهب إلى التنقل اذهب إلى البحث


تتيح وحدة pprint إمكانية طباعة بنى البيانات في بايثون بصورة جميلة pretty-print بطريقة تسمح باستخدام هذه البيانات كمدخل في مفسّر بايثون. وإن تضمنت البنى المنسّقة كائنات ليست من أنواع بايثون الأساسية، فمن الممكن أن يكون تمثيل ذلك الكائن غير قابل للتحميل.

تظهر هذه الحالة عند تضمين كائنات مثل الملفات أو المنافذ sockets أو الأصناف، إلى جانب العديد من الكائنات الأخرى والتي تكون غير قابلة للتمثيل على هيئة حروف في بايثون.

يُبقي التمثيل المنسّق الكائنات في سطر واحد إن كان ذلك ممكنًا، ويقسّمها إلى أسطر متعددة إن لم تلائم العرض المسموح به، ويمكن تعديل هذا المقدار عن طريق إنشاء كائنات PrettyPrinter.

من الجدير بالذكر أنّ القواميس تُرتَّب حسب المفاتيح قبل إجراء عملية التنسيق.

الصنف PrettyPrinter

تعرّف وحدة pprint صنفًا واحدًا فقط هو الصنف PrettyPrinter، وتقدّم نسخ هذا الصنف عددًا من التوابع التي يمكن الاستفادة منها في طباعة المخرجات بصورة منسّقة وجميلة.

دوال الوحدة <code<pprint

تقدّم وحدة pprint الدوال التالية:

الدالة pprint.pformat()‎

تعيد الدالة التمثيل المنسّق للكائن المعطى على هيئة سلسلة نصية.

الدالة pprint.pprint()‎

تطبع الدالة التمثيل المنسّق للكائن المعطى في المخرجات المعطاة، متبوعًا بسطر جديد.

الدالة pprint.isreadable()‎

تحدّد الدالة ما إذا كان التمثيل المنسّق للكائن المعطى "قابلًا للقراءة" أو يمكن استخدامه لإعادة بناء القيمة باستخدام الدالة eval()‎.

الدالة pprint.isrecursive()‎

تحدّد الدالة ما إذا كان الكائن المعطى يتطلب تمثيلًا تعاوديًا.

الدالة pprint.saferepr()‎

تعيد الدالة تمثيلًا على هيئة سلسلة نصية للكائن المعطى، ومحميًا تجاه بنى البيانات التعاودية.

كائنات PrettyPrinter

تمتلك نسخ الصنف PrettyPrinter التوابع التالية:

التابع PrettyPrinter.pformat()‎

التابع PrettyPrinter.pprint()‎

التابع PrettyPrinter.isreadable()‎

التابع PrettyPrinter.isrecursive()‎

التابع PrettyPrinter.format()‎

مصادر