الفرق بين المراجعتين ل"Python/constants"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
ط
سطر 8: سطر 8:
  
 
=== <code>None</code> ===
 
=== <code>None</code> ===
هذا الثابت هو القيمة الوحيدة للنوع <code>NoneType</code>، ويستخدم <code>None</code> للتعبير عن غياب القيمة، كما في حالة عدم تمرير [[Python/arguments|الوسائط]] الافتراضية إلى الدالة. لا تسمح اللغة بإسناد أي قيمة إلى هذا الثابت وستطلق الاستثناء <code>SyntaxError</code> عند محاولة القيام بذلك.
+
هذا الثابت هو القيمة الوحيدة للنوع <code>NoneType</code>، ويستخدم <code>None</code> للتعبير عن غياب القيمة، كما في حالة عدم تمرير [[Python/arguments|الوسائط]] الافتراضية إلى الدالة. لا تسمح اللغة بإسناد أي قيمة إلى هذا الثابت وستطلق الاستثناء <code>[[Python/syntax-errors|SyntaxError]]</code> عند محاولة القيام بذلك.
  
 
=== <code>NotImplemented</code> ===
 
=== <code>NotImplemented</code> ===
سطر 15: سطر 15:
 
'''ملاحظة:'''
 
'''ملاحظة:'''
  
عندما يعيد تابع ثنائي (أو موضعي) القيمة <code>NotImplemented</code> فإنّ مفسّر بايثون سيحاول إجراء العملية المعكوسة على النوع الآخر (أو أي طريقة دعم تراجعي أخرى وذلك حسب نوع العامل المستخدم). إن أعادت جميع المحاولات القيمة <code>NotImplemented</code>، يطلق المفسّر الاستثناء المناسب. 
+
عندما يعيد تابع ثنائي (أو موضعي) القيمة <code>NotImplemented</code> فإنّ مفسّر بايثون سيحاول إجراء العملية المعكوسة على النوع الآخر (أو أي طريقة دعم تراجعي أخرى وذلك حسب نوع العامل المستخدم). إن أعادت جميع المحاولات القيمة <code>NotImplemented</code>، فسيطلق المفسّر الاستثناء المناسب. 
  
 
تؤدي إعادة القيمة <code>NotImplemented</code> بطريقة خاطئة إلى ظهور رسالة خطأ قد تكون مضلّلة أو يمكن أن تعاد قيمة <code>NotImplemented</code> إلى شيفرة بايثون.
 
تؤدي إعادة القيمة <code>NotImplemented</code> بطريقة خاطئة إلى ظهور رسالة خطأ قد تكون مضلّلة أو يمكن أن تعاد قيمة <code>NotImplemented</code> إلى شيفرة بايثون.
سطر 34: سطر 34:
  
 
== ثوابت تضيفها الوحدة <code>site</code> ==
 
== ثوابت تضيفها الوحدة <code>site</code> ==
يجري استيراد [[Python/modules|الوحدة]] <code>site</code> عند بدء تشغيل مفسّر بايثون بصورة تلقائية، إلا إذا استُخدم الخيار ‎-S في سطر الأوامر، وتضيف هذه الوحدة عددًا من الثوابت إلى مجال الأسماء الداخلي. هذه الثوابت مفيدة في [[Python/interpreter|مفسر بايثون]] التفاعلي ولا يجوز استخدامها في البرامج الاعتيادية.
+
يجري استيراد [[Python/modules|الوحدة]] <code>site</code> عند بدء تشغيل مفسّر بايثون بصورة تلقائية، إلا إذا استُخدم الخيار <code>‎-S</code> في سطر الأوامر، وتضيف هذه الوحدة عددًا من الثوابت إلى مجال الأسماء الداخلي. هذه الثوابت مفيدة في [[Python/interpreter|مفسر بايثون]] التفاعلي ولا يجوز استخدامها في البرامج الاعتيادية.
  
 
=== <code>quit(code=None)‎</code> ===
 
=== <code>quit(code=None)‎</code> ===
سطر 50: سطر 50:
  
 
== مصادر ==
 
== مصادر ==
صفحة [[Built-in Constants]] في توثيق بايثون الرسمي.
+
* صفحة [[Built-in Constants]] في توثيق بايثون الرسمي.
 
[[تصنيف:Python]]
 
[[تصنيف:Python]]
 
[[تصنيف:Python Constants]]
 
[[تصنيف:Python Constants]]

مراجعة 14:57، 18 مارس 2018

تقدم بايثون مجموعة من الثوابت، بعضها في مجال الأسماء الداخلي، أما البعض الآخر فيضاف من قبل الوحدة site إلى مفسّر بايثون التفاعلي.

ثوابت في مجال الأسماء الداخلي

False

يمثّل هذا الثابت القيمة الخاطئة للنوع bool. لا تسمح اللغة بإسناد أي قيمة إلى هذا الثابت وستطلق الخطأ SyntaxError عند محاولة القيام بذلك.

True

يمثّل هذا الثابت القيمة الصحيحة للنوع bool. لا تسمح اللغة بإسناد أي قيمة إلى هذا الثابت وستطلق الخطأ SyntaxError عند محاولة القيام بذلك.

None

هذا الثابت هو القيمة الوحيدة للنوع NoneType، ويستخدم None للتعبير عن غياب القيمة، كما في حالة عدم تمرير الوسائط الافتراضية إلى الدالة. لا تسمح اللغة بإسناد أي قيمة إلى هذا الثابت وستطلق الاستثناء SyntaxError عند محاولة القيام بذلك.

NotImplemented

هذا الثابت هو قيمة خاصة يجب أن تعيدها التوابع الخاصة بالنظام الثنائي (binary) مثل: ‎__eq__()‎، و ‎__lt__()‎، و ‎__add__()‎، و ‎__rsub__()‎، وغيرها، للإشارة إلى أن العملية لم تعتمد (not implemented) بالنسبة إلى النوع الآخر، ويمكن أن تعاد هذه القيمة بواسطة التوابع الموضعية (in-place) الخاصة بالنظام الثنائي مثل ‎__imul__()‎ و ‎__iand__()‎ وغيرها، للسبب عينه. القيمة الصحيحة لهذا الثابت هي True.

ملاحظة:

عندما يعيد تابع ثنائي (أو موضعي) القيمة NotImplemented فإنّ مفسّر بايثون سيحاول إجراء العملية المعكوسة على النوع الآخر (أو أي طريقة دعم تراجعي أخرى وذلك حسب نوع العامل المستخدم). إن أعادت جميع المحاولات القيمة NotImplemented، فسيطلق المفسّر الاستثناء المناسب. 

تؤدي إعادة القيمة NotImplemented بطريقة خاطئة إلى ظهور رسالة خطأ قد تكون مضلّلة أو يمكن أن تعاد قيمة NotImplemented إلى شيفرة بايثون.

ملاحظة:

يجب التمييز بين NotImplementedError و NotImplemented بالرغم من أنّ لهما اسمين متشابهين ويستخدمان للغرض ذاته. راجع NotImplementedError للمزيد من التفاصيل حول كيفية استخدامه.

Ellipsis

هذا الثابت مشابه لـ ...، وهو قيمة خاصة يستخدم غالبًا مع عبارات الاقتطاع الموسّعة الخاصة بأنواع حاويات البيانات المعرّفة من قبل المستخدم.

__debug__

يحمل هذا الثابت القيمة True إن جرى تشغيل بايثون دون استخدام الخيار ‎-O في سطر الأوامر. راجع أيضًا عبارة assert.

ملاحظة:

لا يمكن إعادة إسناد قيم إلى الثوابت None، False، True و __debug__، وتؤدي محاولة إسناد أي قيمة لها حتى في أسماء الخاصيات إلى إطلاق الخطأ SyntaxError، لذا يمكن أن نعتبر أنّ هذه الثوابت هي ثوابت صحيحة.

ثوابت تضيفها الوحدة site

يجري استيراد الوحدة site عند بدء تشغيل مفسّر بايثون بصورة تلقائية، إلا إذا استُخدم الخيار ‎-S في سطر الأوامر، وتضيف هذه الوحدة عددًا من الثوابت إلى مجال الأسماء الداخلي. هذه الثوابت مفيدة في مفسر بايثون التفاعلي ولا يجوز استخدامها في البرامج الاعتيادية.

quit(code=None)‎

exit(code=None)‎

هي كائنات تطبع عند استخدامها رسالة مثل "Use quit() or Ctrl-D (i.e. EOF) to exit" وعند استدعائها تطلق الاستثناء SystemExit مع شيفرة الخروج المحدّدة code.

copyright

credits

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

license

كائن عند طباعته يطبع الرسالة "Type license() to see the full license text" وعند استدعائه يعرض الترخيص الكامل على شكل صفحات.

مصادر