اذهب إلى المحتوى
  • 0

ما وظيفة التعليمة pass في بايثون؟

Esraa Mohamed5

السؤال

Recommended Posts

  • 1

كمبرمجين في لغة بايثون نستخدم هذه التعليمة أثناء بناء الكود (Code)، حيث نقوم  باستخدامه لينوب عن مقطع برمجي (SubCode)  "وليكن A " نريد تركه فارغاً حالياً  وتأجيل كتابته إلى وقت آخر.
لكن أن نترك المقطع فارغاً هو شيء غير مسموح  وينتج عنه خطأ في حال كان ال SubCode هو تابع أو كلاس أو تعبير شرطي أو حلقة، فكما تعلم التعليمة التالية تنتج خطأ إذا لم نعرف شيء ضمن التابع (لايمكن تركه فارغاً)

def C():
	print("OK")
#فارغاً وهذا سينتج خطأ A هنا تركنا التابع 
def A():
print(5+6)

هنا تأتي مهمة التعليمة pass،  وعندما يتم تنفيذ هذه التعليمة لايحدث أي شيء ولكن تتجنب أن يتم إيقاف التنفيذ والحصول على error .
أي:

def C():
	print("OK")
# هنا لن ينتج خطأ
def A():
	pass
print(5+6)

نفس الأمر لو كنت تستخدم حلقة مثلاً:

for x in [0, 1, 2]:
  pass
  

مثال:

s = {'d', 'c', 'k', 's'}
for v in s:
    pass
# هنا سيمر المترجم على الحلقة ولن يتم تنفيذ أي شيء أي كأنها لاحوي على تعليمات


أو في حال قمنا بتعريف Class:

class V:
  pass

الخلاصة : نستخدمها عندما نريد تحقيق مقطع برمجي (حلقة أو تابع أو كلاس أو عبارة شرطية ...إلخ) لكن لسبب ما نريد تحقيقها في وقت لاحق، ونرغب بوضعها في الكود فارغة.

تم التعديل في بواسطة Ali Haidar Ahmad
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

إن pass في لغة بايثون هي باختصار القيمة null (أو عدم وجود قيمة). بحيث لا يتم تجاهلها من قبل المفسّر ولا تسبب أي خطأ وإنما فقط يتم التعرّف على مكان وجودها. يتم استخدامها على سبيل المثال في حال كنا نريد وضع تابع معيّن ولكن لا نرغب بإضافة أي كود ضمنه، نقوم بكتابة pass للاحتفاظ بمكانه وإضافة أي كود ضمنه في المستقبل.

مثال:

def addition(num1, num2):
  pass

addition(2, 2)

أو عندما نريد تجاهل شرط معيّن مثلاً من شروط if:

def display(number):
  
  if number is 2:
    pass
  else:
    print ("Number: ", number)
    
display(2)
display(3)

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

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...