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

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث


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

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

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

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

دوال الوحدة pprint

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

الدالة pprint.pformat()

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

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

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

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

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

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

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

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

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

كائنات PrettyPrinter

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

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

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

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

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

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

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

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

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

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

يعيد التابع نسخة للكائن المعطى تكون على هيئة سلسلة نصية، وراية تحدد ما إذا كانت النتيجة قابلة للقراءة وراية أخرى تحدّد ما إذا تمكن التابع من اكتشاف حالة تعاود في النتيجة.

مصادر