• 0

لماذا توجد عدة طرق للخروج من تطبيق بايثون؟

يبدو أن بايثون تدعم طرق مختلفة لإيقاف والخروج من سكربت، ومن أبرز الطرق التي وجدتها دوال quit() وexit() وsys.exit() فما الفرق بينهم؟ وهل توجد طرق أخرى للخروج؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

هنالك بعض الفروقات البسيطة بين الدوال المختلفة للخروج في بايثون، فدالة quit تصدر استثناء (exception) من نوع SystemExit خلف الكواليس ولو قمت بطباعتها فسيظهر التالي:

>>> print (quit)
Use quit() or Ctrl-Z plus Return to exit
>>>

كما يبدو فإن هذه الميزة قد تم إضافتها لمساعدة الأشخاص الذين لا يملكون خبرة بلغة بايثون.
وهنالك أيضا دالة exit وهي تشبه دالة quit وتعتبر كمثيل لها ولقد وُجدت في بايثون لتسهيل استخدام اللغة.
عند طباعة الدالة السابقة يظهر التالي:

>>> print (exit)
Use exit() or Ctrl-Z plus Return to exit
>>>

وهو يشبه ما يظهر  عندما نقوم بطباعة الدالة السابقة.
أما بالنسبة لدالة sys.exit فهي أيضا تصدر استثناء SystemExit في الخلفية والفرق بينها وبين الدالتين السابقتين أنها أفضل عند البرمجة لأنها تعتمد على وحدة sys والتي يتم استدعاؤها في أغلب الأوقات.
وفي النهاية توجد أيضا دالة os._exit وهي تُخرجك من البرنامج من دون استدعاء cleanup handlers و flushing stdio buffers ويتم استخدام هذه الطريقة للخروج في حالات خاصة وأشهر حالات الخروج هي في عمليات الأبناء الذين تم إنشاؤهم عن طريق os.fork
المصادر 1 2

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن