جزء لا مفر منه لكونك مبرمجًا هو أن برامجك ستعطي الكثير من الأخطاء.
لا يمكنك تجنب الحشرات.
لا يمكنك تجنب كسر البرامج.
وظيفة طباعة بسيطة هنا ، دعنا نقول ، كلمة بها أخطاء إملائية مع دعنا نقول عدم وجود فاصلة.
إذا قمت بتشغيل هذا ، فقد رأينا هذا كثيرًا ، أليس كذلك؟
لقد رأينا الكثير من هذا يقرأ خلال هذه الدورة ، الكثير من هذه الأخطاء.
إذا حاولت إضافة علامة زائد ، فلنفترض.
حقيقي.
انقر فوق تشغيل.
هذا يعمل ، ولكن فجأة قررت أن أضيف مرحبًا لأحدهم.
ومرة أخرى ، نرى أن اللون الأحمر هذه المرة خطأ في النوع.
خطا.
هذا يعطل برنامجنا مثل هذا.
يطلق عليه استثناء.
وبايثون.
يرفع هذه الاستثناءات عندما يقول المترجم ، مهلا ، ليس لدي أي فكرة عما تفعله ، هناك خطأ
ما.
لا أعرف ما أفعله بعد الآن.
سأتوقف عن كل ما أفعله وسأعطيك نتيجة.
هذا سيء لأننا الآن نلعب فقط.
ولكن إذا كنا Google ويعتمد الناس علينا ربما للتحقق من بريدهم الإلكتروني ، لمشاهدة مقاطع فيديو YouTube ، إذا
كانت برامجنا بها استثناءات وتوقفوا عن العمل وأخطأوا ، فهذا سيء.
يمكن أن يكلف الشركات الملايين.
فكيف يمكننا التعامل مع هذه الاستثناءات التي تعطل برنامجنا؟
حسنًا ، نحن بحاجة إلى شيء يسمى معالجة الأخطاء.
إنه جزء طبيعي من كونك مبرمجًا.
والمبرمج المتميز قادر على معالجة الأخطاء في برنامجه.
لأنه بدلاً من السماح لبرامجنا بالتهوية فقط ، يمكننا التعامل معها بحيث إذا حصلنا على شيء
مثل خطأ من النوع مثل هذا ، فيمكننا بالفعل معالجة هذا الخطأ داخل برامجنا.
وفي هذا القسم ، سنتعلم كل شيء عن ذلك.
لكن الفكرة الأساسية هي أن معالجة الأخطاء تسمح لنا بالسماح بتشغيل برنامج Python النصي ، حتى إذا
كانت هناك أخطاء.
تبدو مثيرة للاهتمام ، أليس كذلك؟
حسنًا ، قبل أن ندخل في ذلك ، دعنا نتحدث فقط عن بعض الأخطاء الموجودة في بايثون.
لقد رأينا بالفعل خطأ في الكتابة حيث حاولنا القيام بشيء بين نوعين مختلفين من البيانات
غير متوافقين ، مثل إضافة int و string وهذه الاستثناءات المضمنة في Python ، هناك الكثير منها وسأقوم بالربط
بهذا المورد يمكن أن نلقي نظرة.
ولكن إذا قمت بالتمرير هنا ، فسترى خطأ في السمة وخطأ في الملف.
نستمر ، لدينا خطأ في الاسم.
لدينا الكثير من الأخطاء المرجعية للخطأ فقط طن.
دعني فقط أتناول بعضًا منها شائعة جدًا.
واحد هو خطأ في بناء الجملة.
إذا فعلت ذلك ودعونا نقول.
ووو هووو!
ونسيت الفاصلة المنقوطة هنا ، وأقوم بتشغيلها.
أحصل على خطأ في بناء الجملة؟
إنه ليس تركيبًا قياسيًا للبايثون.
لا بد لي من إصلاح خطأي.
يمكنني أيضًا الحصول على شيء يسمى خطأ الاسم إذا لنفترض أنني أستخدم اسمًا زائدًا واحدًا مثل هذا وقمت بالنقر فوقه.
اسم مثل هذا.
يمكنك رؤية التسطير الأحمر هنا.
أحصل على اسم غير محدد حتى إذا قمت بتشغيل هذا الرمز.
سأحصل على اسم.
لم يتم تعريف اسمها.
لقد رأينا نوع الهواء.
لكن ماذا عن هذا؟
ماذا لو كان لدينا قائمة؟
دعنا نقول لي.
واحد اثنين ثلاثة.
وأصل إلى الكذب ، دعنا نقول فهرس من خمسة.
إذا قمت بتشغيل هذا.
أحصل على قائمة خطأ في الفهرس.
الفهرس خارج النطاق.
ماذا لو كان لدينا قاموس؟
لنفترض أننا ننشئ قاموسًا هنا.
سنقول أ.
اتصل بواحد وسأترك الأمر عند هذا الحد.
لذلك سيكون هذا قاموسًا.
إذا قمت بعمل القاموس هنا وحاولت الوصول إلى شيء غير موجود وقمت بالنقر فوق تشغيل.
أحصل على خطأ رئيسي لأنني أصل إلى مفتاح غير موجود.
يمكننا أيضًا ، لنقل ، خمسة مقسومة على صفر ، وهو ما يجب أن يعطيني خطأ قسمة صفريًا لأنني أحاول القسمة
على صفر ، حسنًا ، لا يمكنك فعل ذلك.
لذلك هناك الكثير من الأخطاء أو الاستثناءات المضمنة في Python.
الآن ، ليس عليك حفظ أي من هؤلاء.
ستظهر في معظم الأوقات في برنامجك وستعرف ما تعنيه ، ولكن يمكنك دائمًا
استخدامها كمرجع لقراءتها.
لكن السؤال الذي يجب أن تطرحه على نفسك هو كيف نتجنب ذلك؟
لأن معظم البرامج لا نقوم فقط بكتابة المعلومات.
عادة البرامج تتفاعل مع العالم الخارجي ، أليس كذلك؟
عندما أقوم بتسجيل الدخول إلى بريدي الإلكتروني ، أسمح للمستخدم باستخدام بريده الإلكتروني وكلمة المرور.
عندما ألعب لعبة ، أسمح للمستخدم بالتحكم في شخصية.
لذلك تتفاعل البرامج باستمرار مع العالم الخارجي ، وعليهم التأكد من أن أي مدخلات
يحصلون عليها هي النوع الصحيح الذي يتوقعونه.
لأنه إذا تلقوا شيئًا لم يتوقعوه ، مثل الرقم ، ويصادف أن يكون هذا الرقم ، دعنا
نقول ، صفرًا ، الذي أعطيناه إياه.
حسنًا ، كسر هذا المستخدم برنامجنا.
لذلك نحن بحاجة للتعامل مع هذه المواقف حيث قد يعطي المستخدم شيئًا سيئًا لا نريده.
في الفيديو التالي ، سنستكشف كيف يمكننا التعامل مع أخطائنا.
سأراك في ذلك.