الفرق بين المراجعتين ل"Python/pprint/PrettyPrinter/format"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:التابع <code>PrettyPrinter.format()‎</code> في بايثون}}</noinclude> يحدّد التابع ما إذا كان الكائن ا...')
 
 
(مراجعة متوسطة واحدة بواسطة نفس المستخدم غير معروضة)
سطر 13: سطر 13:
 
الكائن المراد تمثيله.
 
الكائن المراد تمثيله.
 
===<code>context</code>===
 
===<code>context</code>===
قاموس يحتوي على معرّف id()‎ الكائنات التي تمثّل جزءًا من سياق التمثيل الحالي (حاويات مباشرة أو غير مباشرة للكائن المعطى والتي تؤثّر على عملية التمثيل) كمفاتيح في القاموس. إن احتاج كائن معيّن إلى التنسيق وهو ممثّل ضمن السياق، فإنّ القيمة االثالثة المعادة من هذا التابع تكون True. يجب أن تضيف الاستدعاءات التعاودية للتابع format()‎ عناصر الحاويات الإضافية إلى هذا القاموس.
+
قاموس يحتوي على معرّف <code>[[Python/id|id()‎]]</code> الكائنات التي تمثّل جزءًا من سياق التمثيل الحالي (حاويات مباشرة أو غير مباشرة للكائن المعطى والتي تؤثّر على عملية التمثيل) كمفاتيح في القاموس. إن احتاج كائن معيّن إلى التنسيق وهو ممثّل ضمن السياق، فإنّ القيمة االثالثة المعادة من هذا التابع تكون <code>True</code>. يجب أن تضيف الاستدعاءات التعاودية للتابع <code>format()</code>‎ عناصر الحاويات الإضافية إلى هذا القاموس.
 
===<code>maxlevels</code>===
 
===<code>maxlevels</code>===
يحدّد مقدار التعاود المطلوب، ويأخذ القيمة 0 إن لم يحدّد المقدار المطلوب. يجب تمرير هذا المعامل دون تعديل إلى الاستدعاءات التعاودية.
+
يحدّد مقدار التعاود المطلوب، ويأخذ القيمة <code>0</code> إن لم يحدّد المقدار المطلوب. يجب تمرير هذا المعامل دون تعديل إلى الاستدعاءات التعاودية.
 
===<code>level</code>===
 
===<code>level</code>===
 
يعطي هذا المعامل المستوى الحالي، ويجب تمرير قيمة إلى الاستدعاءات التعاودية تكون أقل من قيمة الاستدعاء الحالي.
 
يعطي هذا المعامل المستوى الحالي، ويجب تمرير قيمة إلى الاستدعاءات التعاودية تكون أقل من قيمة الاستدعاء الحالي.
سطر 23: سطر 23:
  
 
1- النسخة المنسّقة على هيئة سلسلة نصية للكائن المعطى.
 
1- النسخة المنسّقة على هيئة سلسلة نصية للكائن المعطى.
 +
 
2- راية تحدّد ما إذا كانت النتيجة قابلة للقراءة.
 
2- راية تحدّد ما إذا كانت النتيجة قابلة للقراءة.
 +
 
3- راية تحدّد ما إذا كشف التابع عن وجود حالة تعاود.
 
3- راية تحدّد ما إذا كشف التابع عن وجود حالة تعاود.
 
== أمثلة ==
 
 
يبين المثال التالي آلية عمل التابع:
 
 
<syntaxhighlight lang="python3">
 
>>> import pprint
 
>>> stuff = ['spam', 'eggs', 'lumberjack', 'knights', 'ni']
 
>>> stuff.insert(0, stuff)
 
>>> pp = pprint.PrettyPrinter(indent=4)
 
>>> pp.pprint(stuff)
 
[  <Recursion on list with id=140108600272328>,
 
    'spam',
 
    'eggs',
 
    'lumberjack',
 
    'knights',
 
    'ni']
 
>>> pp.isrecursive(stuff)
 
True
 
 
</syntaxhighlight>
 
  
 
== مصادر ==
 
== مصادر ==

المراجعة الحالية بتاريخ 18:55، 20 أغسطس 2018

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

البنية العامة

PrettyPrinter.format(object, context, maxlevels, level)

المعاملات

object

الكائن المراد تمثيله.

context

قاموس يحتوي على معرّف id()‎ الكائنات التي تمثّل جزءًا من سياق التمثيل الحالي (حاويات مباشرة أو غير مباشرة للكائن المعطى والتي تؤثّر على عملية التمثيل) كمفاتيح في القاموس. إن احتاج كائن معيّن إلى التنسيق وهو ممثّل ضمن السياق، فإنّ القيمة االثالثة المعادة من هذا التابع تكون True. يجب أن تضيف الاستدعاءات التعاودية للتابع format()‎ عناصر الحاويات الإضافية إلى هذا القاموس.

maxlevels

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

level

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

القيمة المعادة

يعيد التابع ثلاث قيم هي:

1- النسخة المنسّقة على هيئة سلسلة نصية للكائن المعطى.

2- راية تحدّد ما إذا كانت النتيجة قابلة للقراءة.

3- راية تحدّد ما إذا كشف التابع عن وجود حالة تعاود.

مصادر

صفحة Data pretty printer في توثيق بايثون الرسمي.