يتيح لك تشغيل البرامج النصية في بايثون أتمتة المهام المختلفة وتبسيط العمل مع البيانات. ومع ذلك ، في بعض الأحيان يكون من الضروري مقاطعة تنفيذ البرنامج النصي ، على سبيل المثال ، في حالة حدوث خطأ أو عند الوصول إلى شرط معين. لحسن الحظ ، بايثون لديه تعليمات بسيطة التي يمكنك استخدامها لوقف البرنامج النصي في اللحظة المناسبة.
بيثون اثنين من التعليمات الأساسية لوقف البرنامج النصي: رفع و سيس.خروج (). باستخدام عبارة رفع ، يمكنك إنشاء استثناء يوقف تنفيذ البرنامج النصي. على سبيل المثال ، إذا حدث خطأ أثناء تشغيل البرنامج النصي ، فيمكنك رفع استثناء باستخدام عبارة رفع وتحديد نص الخطأ المناسب. سيؤدي هذا إلى إيقاف البرنامج النصي وعرض معلومات الخطأ.
النظام.خروج () تعليمات كما يسمح لك لوقف تنفيذ البرنامج النصي. يتطلب الأمر وسيطة اختيارية ، رمز الخروج ، والتي يمكن استخدامها لتحديد سبب إيقاف البرنامج النصي. إذا لم يتم تحديد وسيطة ، فسيتم استخدام 0 افتراضيا ، مما يعني أن البرنامج النصي قد اكتمل بنجاح. مثال على استخدام النظام.خروج () قد تبدو هذه:
إذا كان الشرط:
- سيس.خروج (1)
- وهكذا ، ومعرفة هذه التعليمات البسيطة ، يمكنك بسهولة إيقاف البرنامج النصي بيثون في اللحظة المناسبة ، وبالتالي تبسيط إدارة البرنامج والتعامل مع الحالات الناشئة.
- كيفية إيقاف تنفيذ برنامج نصي بيثون في بضعة أوامر بسيطة
- استخدام أوامر/مفاتيح الخروج المبكر
- استخدام الاستثناءات لإيقاف البرنامج النصي
- استخدام وحدة الإشارة لإيقاف تنفيذ البرنامج النصي
- باستخدام النظام.خروج () ونظام التشغيل._خروج () وظائف لإجبار إكمال البرنامج النصي
- تطبيق مقاطعة مع مفتاح لوحة المفاتيح
- سؤال وجواب
- كيف يمكنني إيقاف برنامج نصي بيثون?
- هل من الممكن لوقف النصي بيثون من التعليمات البرمجية?
ما هو رمز الإرجاع الذي يقوم به النظام.خروج () عودة وظيفة?
هل هناك أي طرق أخرى لوقف النصي بيثون?
كيفية إيقاف تنفيذ برنامج نصي بيثون في بضعة أوامر بسيطة
في بعض الأحيان ، أثناء تنفيذ نص بيثون ، قد يكون من الضروري مقاطعة عمله قبل الانتهاء. يمكن أن يحدث هذا لأسباب مختلفة ، مثل وجود خطأ في التعليمات البرمجية أو شروط تنفيذ غير مرغوب فيها أو وقت تنفيذ طويل.
بايثون لديه بعض الأوامر البسيطة التي تسمح لك لوقف تنفيذ البرنامج النصي:
1. أمر الاستراحة
يتم استخدام أمر الفاصل في الحلقات (على سبيل المثال ، في حلقة أو حلقة أثناء) لمقاطعة الحلقة على الفور. بمجرد تنفيذ أمر الفاصل ، يتم نقل تنفيذ توقف الحلقة والتحكم إلى التعليمات التالية بعد الحلقة. هنا مثال على استخدام الأمر كسر:
لأني في النطاق (10):
إذا أنا = = 5:
استراحة
طباعة (ط)
في هذا المثال ، بعد المتغير الذي أحصل عليه القيمة 5 ، سيتم تنفيذ أمر الفاصل وسيتم مقاطعة الحلقة. وبالتالي ، سيتم عرض الأرقام من 0 إلى 4 على الشاشة.
2. النظام.خروج () الأمر
النظام.يتم استخدام وظيفة الخروج () لإيقاف تنفيذ البرنامج النصي تماما. عندما يتم استدعاء هذه الوظيفة ، يتوقف تنفيذ البرنامج النصي وينتهي البرنامج. هنا مثال على استخدام النظام.خروج () وظيفة:
نظام الاستيراد
طباعة ("بداية البرنامج النصي")
سيس.خروج()
طباعة ("لن يتم تنفيذ هذا الرمز أبدا")
في هذا المثال ، بعد استدعاء وظيفة سيس.خروج () ستتم طباعة الرسالة "بدء البرنامج النصي" ، ثم سيتم إنهاء تنفيذ البرنامج النصي.
3. أمر مقاطعة لوحة المفاتيح
إذا كنت تقوم بتشغيل البرنامج النصي في سطر الأوامر أو في غلاف بيثون تفاعلي ، فيمكنك إحباط البرنامج النصي بالضغط كنترول+ج. سيؤدي هذا إلى استثناء مقاطعة لوحة المفاتيح ، والذي يمكن اعتراضه في رمز البرنامج النصي لتنفيذ بعض الإجراءات الإضافية قبل إنهاء البرنامج. هنا مثال على استخدام لوحة المفاتيحمقاطعة:
حاول:
بينما الاستثناء الحقيقي:
تمريرة
باستثناء لوحة المفاتيحمقاطعة:
طباعة ("تمت مقاطعة البرنامج النصي من قبل المستخدم")
في هذا المثال ، تستمر الحلقة في العمل إلى أجل غير مسمى حتى يتم الضغط على مجموعة مفاتيح كترل+ج. في هذه الحالة ، سيتم عرض الرسالة "تمت مقاطعة البرنامج النصي من قبل المستخدم" وسيتم الانتهاء من تنفيذ البرنامج.
لاحظ أنه باستخدام الأمر فاصل ، وظيفة سيس.خروج () أو لوحة المفاتيحيجب تبرير الاستثناءات المتقطعة واستخدامها بحذر. يمكن أن يؤدي الاستخدام غير السليم أو الاستدعاء المتكرر لهذه الأوامر إلى عدم استقرار البرنامج أو عواقب غير مرغوب فيها.
استخدام أوامر/مفاتيح الخروج المبكر
- عند البرمجة في بايثون ، من الضروري في بعض الأحيان إيقاف تنفيذ البرنامج النصي أثناء تشغيله. في مثل هذه الحالات ، يمكنك استخدام الأوامر والمفاتيح التي تسمح لك بالخروج من البرنامج في وقت مبكر.
- دعونا ننظر إلى بعض منهم:
السيطرة + ج: واحدة من أكثر الطرق شيوعا لوقف تنفيذ البرنامج النصي في بيثون. توقف مجموعة المفاتيح هذه تنفيذ البرنامج في أي وقت ، بغض النظر عن مكان نقطة التنفيذ الحالية.
السيطرة + د:يمكن استخدام مجموعة المفاتيح هذه على أنظمة تشبه يونكس للإشارة إلى نهاية إدخال البيانات. في بايثون ، يؤدي إلى الخروج من الوضع التفاعلي. إذا كنت تكتب نصا ، فلن يتوقف كترل+د عن تنفيذه.
باستخدام هذه الأوامر أو المفاتيح يوفر وسيلة سريعة وموثوق بها لوقف تنفيذ البرنامج النصي بيثون إذا لزم الأمر. ومع ذلك ، يجب توخي الحذر عند استخدام هذه الأوامر حتى لا تفقد أي بيانات مهمة أو تعطل سلامة البرنامج.
لإيقاف برنامج نصي مع استثناءات في بايثون ، يمكنك استخدام الكلمة الرئيسية
تمثل الاستثناءات في بايثون الفئات ويمكن إنشاؤها باستخدام المشغل
رفع
- فئة الاستثناء ، و
على سبيل المثال ، يمكنك استخدام الفصل
قيمةالخطأ
للتعامل مع خطأ قيمة وسيطة دالة غير صالحة:
تقسيم مواطنه (أ ، ب):
إذا ب = = 0:
رفع خطأ القيمة ("لا يمكن أن يكون المقسوم عليه مساويا لـ 0")
في هذا المثال ، إذا كانت الوسيطة الثانية
b
للتعامل مع الاستثناء وإيقاف البرنامج النصي ، يمكنك استخدام البناء
حاول-باستثناء
:
حاول:
# التعليمات البرمجية التي يمكن أن تسبب استثناء
باستثناء استثناء مثل ه:
يتم وضع التعليمات البرمجية التي يمكن أن تسبب استثناء. إذا تم طرح استثناء ، فإن التحكم يذهب إلى
باستثناء كتلة
، حيث يمكنك التعامل مع الاستثناء ، على سبيل المثال ، طباعة رسالة خطأ وإيقاف تنفيذ البرنامج النصي.
يمكن أن يكون استخدام الاستثناءات لإيقاف البرنامج النصي مفيدا في التعامل مع الأخطاء والمواقف غير المتوقعة لمنع البرنامج من العمل بشكل غير صحيح وجعله أكثر موثوقية.
استخدام وحدة الإشارة لإيقاف تنفيذ البرنامج النصي
في بايثون ، من الممكن إيقاف تنفيذ البرنامج النصي باستخدام وحدة الإشارة. توفر هذه الوحدة وظائف للعمل مع إشارات نظام التشغيل. تستخدم الإشارات للتواصل بين العمليات ، وكذلك للتحكم في تنفيذ كود البرنامج.
واحدة من الإشارات الأكثر شيوعا هي سيجينت (إشارة المقاطعة). وعادة ما يتم إنشاؤه عن طريق الضغط على السيطرة+ج تركيبة المفاتيح في محطة أو وحدة التحكم. في بايثون ، يمكنك معالجة هذه الإشارة لإيقاف تنفيذ البرنامج النصي بناء على طلب المستخدم.
مثال على استخدام وحدة الإشارة لإيقاف تنفيذ البرنامج النصي:
إشارة الاستيراد
# معالج إشارة المقاطعة
صفر مقاطعة_مقبض (إشارة ، إطار):
طباعة ('تم إيقاف البرنامج')
خروج (0)
# تثبيت المقاطعة
إشارة معالج إشارة.إشارة (إشارة.سيجينت ، مقاطعة_مقبض)
# مثال على تنفيذ حلقة لا نهائية
بينما صحيح:
طباعة ('البرنامج النصي قيد التشغيل')
الوقت.النوم (1)
عند تنفيذ هذا البرنامج النصي ، يمكنك إيقافه بالضغط كنترول + ج. في هذه الحالة ، سيتم استدعاء معالج إشارة المقاطعة ، والذي سيعرض الرسالة "تم إيقاف البرنامج" وإنهاء تنفيذ البرنامج النصي عن طريق استدعاء وظيفة الخروج(0).
باستخدام وحدة الإشارة ، يمكنك تكوين معالجة الإشارات الأخرى ، على سبيل المثال ، إغلاق المحطة الطرفية (تنهد) أو إيقاف التشغيل (سيغتيرم). يمكنك إنشاء معالج خاص بك لكل إشارة وتحديد الإجراء اللازم عند استلامها. هذا مفيد بشكل خاص في الحالات التي تحتاج فيها إلى منع إنهاء البرنامج غير المرغوب فيه أو تنفيذ بعض الإجراءات قبل التوقف.
باستخدام النظام.خروج () ونظام التشغيل._خروج () وظائف لإجبار إكمال البرنامج النصي
في بايثون ، هناك طرق مختلفة لإيقاف تنفيذ البرنامج النصي في أي مكان. اثنين من هذه الأساليب تستخدم سيس.خروج () ونظام التشغيل._خروج()
وظائف. النظام.خروج () وظيفة هي جزء من وحدة سيس ويمكن أن تأخذ وسيطة اختيارية — رمز الإنهاء. بشكل افتراضي ، يكون رمز الإكمال هو 0 ، مما يعني أن البرنامج النصي قد اكتمل بنجاح. إذا قمت بتحديد قيمة مختلفة ، سيتم إنهاء البرنامج النصي مع التعليمات البرمجية المناسبة. مثال على استخدام النظام.خروج () وظيفة:
نظام الاستيراد
# تنفيذ بعض الأوامر
...
# شرط لاستكمال البرنامج النصي
إذا كان الشرط:
سيس.خروج (1) # الانتهاء القسري من البرنامج النصي مع رمز الانتهاء 1
نظام التشغيل._خروج () وظيفة هي جزء من وحدة نظام التشغيل ويأخذ وسيطة واحدة ، رمز الإنهاء. الفرق بين نظام التشغيل._الخروج () والنظام.خروج () يعني أن نظام التشغيل._خروج () ينهي البرنامج النصي على الفور دون إجراء أي عمليات لاحقة أو معالجة استثناء. مثال على استخدام نظام التشغيل._خروج () وظيفة:
استيراد نظام التشغيل
# تنفيذ بعض الأوامر
...
# الشرط الذي تحتاج بموجبه إلى إكمال البرنامج النصي
إذا كان الشرط:
نظام التشغيل._خروج (1) # فرض الإنهاء الفوري للبرنامج النصي برمز الإكمال 1
من المهم ملاحظة أنه عند استخدام النظام.خروج () ونظام التشغيل._خروج () وظائف ، يجب عليك تحديد رمز الخروج بعناية. من المفترض عموما أن الرمز 0 يعني الإكمال الناجح ، وتشير القيم الأخرى إلى أخطاء أو مواقف غير طبيعية أخرى.
باستخدام النظام.خروج () ونظام التشغيل._خروج () وظائف يسمح لك للسيطرة على تنفيذ ووقف البرنامج النصي اعتمادا على الظروف أو الأخطاء. عند استخدامها بشكل صحيح ، ستساعدك هذه الميزات في إنشاء برامج أكثر موثوقية ويمكن التحكم فيها.
تطبيق مقاطعة مع مفتاح لوحة المفاتيح
عند تشغيل برنامج نصي بيثون يقوم ببعض المهام ، يصبح من الضروري أحيانا إيقاف تنفيذ البرنامج النصي يدويا. تتمثل إحدى طرق إيقاف البرنامج النصي في استخدام مقاطعة باستخدام مفتاح مقاطعة لوحة المفاتيح.
لوحة المفاتيحالمقاطعة المقاطعة هي آلية يمكنك من خلالها مقاطعة تنفيذ برنامج نصي بالضغط كنترول+ج على لوحة المفاتيح. عند الضغط على هذه المفاتيح أثناء تنفيذ البرنامج النصي ، بايثون يلقي استثناء اسمه كيبواردينتيراوبس.
للتعامل مع لوحة المفاتيحإستثناء المقاطعة،يمكنك استخدام كتلة المحاولة باستثناء. في كتلة محاولة ، يمكنك وضع التعليمات البرمجية التي يمكن أن تسبب استثناء مقاطعة لوحة المفاتيح ، وفي كتلة باستثناء ، يمكنك تحديد ما يجب القيام به إذا تم إنشاء استثناء.
في ما يلي مثال على استخدام لوحة مفاتيح المقاطعة:
حاول:
بينما صحيح:
# أداء نوع ما
من عمليات المرور
باستثناء لوحة المفاتيحمقاطعة:
طباعة ("تم إيقاف البرنامج النصي يدويا باستخدام مفاتيح السيطرة+ج")
في هذا المثال ، نستخدم حلقة لا نهائية للحفاظ على تشغيل البرنامج حتى نقطعه. إذا قمنا بتنفيذ البرنامج واضغط على مجموعة مفاتيح كترل+ج ، سيتم عرض الرسالة "تم إيقاف البرنامج النصي يدويا باستخدام مفاتيح كترل + ج".
باستخدام لوحة المفاتيحغالبا ما يتم استخدام المقاطعة المتقطعة في البرامج النصية لسطر الأوامر حيث قد ترغب في إيقاف تنفيذ البرنامج النصي أثناء تشغيله. يكون هذا مفيدا عندما يكون لديك عملية طويلة ولا تريد الانتظار حتى تنتهي.
سؤال وجواب
كيف يمكنني إيقاف برنامج نصي بيثون?
هناك عدة طرق لوقف تنفيذ برنامج نصي بيثون. واحدة من أسهل الطرق هي استخدام اختصار لوحة المفاتيح كنترول+ج في سطر الأوامر. عندما تضغط كنترول + ج ، فإنه يرسل إشارة مقاطعة إلى العملية ، مما يؤدي إلى توقفها. يمكنك أيضا استخدام النظام.إنهاء () وظيفة للإشارة صراحة إلى أنه يجب إيقاف البرنامج النصي. تأخذ هذه الوظيفة وسيطة اختيارية يمكن استخدامها لإرجاع رمز الإكمال.
هل من الممكن لوقف النصي بيثون من التعليمات البرمجية?
نعم ، يمكنك إيقاف البرنامج النصي بيثون من التعليمات البرمجية. للقيام بذلك ، يمكنك استخدام سيس.خروج () وظيفة من وحدة سيس. تأخذ هذه الوظيفة وسيطة اختيارية يمكن استخدامها لإرجاع رمز الإكمال. استدعاء النظام.سيؤدي الخروج () إلى إنهاء البرنامج على الفور والخروج من البرنامج النصي.
الذي رمز العودة يفعل سيس.خروج () عودة وظيفة?
النظام.خروج () وظيفة بإرجاع رمز الإرجاع الافتراضي 0. ومع ذلك ، يمكنك تحديد رمز الإرجاع المطلوب عن طريق تمريره كوسيطة إلى النظام.خروج () وظيفة. على سبيل المثال ، إذا كنت تريد الإشارة إلى أن البرنامج النصي قد تم إيقافه بسبب خطأ ، فيمكنك استخدام النظام.خروج (1).