واحدة من الأخطاء الأكثر شيوعا التي يواجهها مطورو بايثون هو تيبيرور: كائن 'نونيتيب' غير قابل للتكرار. يحدث هذا الخطأ عند محاولة تكرار في التعليمات البرمجية (على سبيل المثال ، مع حلقة) يحدث على كائن من نوع لا شيء.
نوع لا شيء في بايثون هو قيمة خاصة تستخدم عادة للإشارة إلى عدم وجود قيمة أو كقيمة إرجاع لدالة إذا لم تكن هناك نتيجة. تحدث الأخطاء عندما نحاول تنفيذ عمليات تتطلب قيمة على كائن من النوع لا شيء.
لإصلاح خطأ تيبيرور: كائن' نونيتيب ' غير قابل للتكرار ، تحتاج أولا إلى فهم لماذا يظهر كائن من نوع لا شيء في التعليمات البرمجية وكيفية تجنب ذلك. يمكن أن يحدث هذا بسبب عدة أسباب ، مثل الاستخدام غير السليم للوظائف ، أو عدم معالجة الاستثناءات ، أو المنطق غير الصحيح في الكود.
من المهم توخي الحذر عند العمل مع الوظائف ، خاصة عند الاتصال بها وتعيين قيم الإرجاع للمتغيرات. تحقق من كل متغير بدون أي شيء قبل إجراء التكرار أو العمليات الأخرى عليه.
- كيفية تجنب خطأ تيبيرور:' نونيتيب ' الكائن غير قابل للتكرار في بيثون
- التحقق من القيم قبل استخدامها
- استخدام العوامل الشرطية للتعامل مع لا شيء
- استخدام وظيفة إيسينستانس للتحقق من نوع البيانات
- باستخدام محاولة - باستثناء بناء للتعامل مع الاستثناءات
- سؤال وجواب
- كيفية إصلاح خطأ تيبيرور:' نونيتيب ' الكائن غير قابل للتكرار في بيثون?
- كيف يمكنني تحديد سبب حدوث خطأ تيبيرور:' نونيتيب ' الكائن غير قابل للتكرار في بيثون?
- كيف يمكنني إصلاح' نونيتيب ' الكائن ليس خطأ قابل للتكرار في بيثون إذا حدث عند العمل مع الملفات?
كيفية تجنب خطأ تيبيرور:' نونيتيب ' الكائن غير قابل للتكرار في بيثون
خطأ تيبيرور:' نونيتيب ' الكائن غير قابل للتكرار يحدث عندما نحاول تطبيق عملية التكرار (على سبيل المثال ، ل حلقة) إلى كائن من نوع لا شيء. كائن من النوع لا شيء هي قيمة خاصة تشير إلى عدم وجود قيمة أو بيانات يتعذر الوصول إليها.
لتجنب خطأ تيبيرور:' نونيتيب ' الكائن غير قابل للتكرار ، فمن الضروري للتحقق من أن الكائن الذي يتم تطبيق عملية التكرار ليس لا شيء. يمكن القيام بذلك باستخدام بناء الشرط إذا. داخل كتلة الشرط ، يمكنك تنفيذ التعليمات البرمجية المرتبطة بتكرار الكائن ، ولكن فقط إذا كان الكائن لا يساوي لا شيء.
مثال:
قائمتي = لا شيء
إذا كانت قائمتي ليست لا شيء:
للعنصر في قائمتي:
# تنفيذ التعليمات البرمجية المرتبطة التكرار من الكائن
# ...
آخر:
# تنفيذ التعليمات البرمجية إذا كان الكائن لا شيء
# ...
في هذا المثال ، إذا كانت قائمتي لا تساوي لا شيء ، فسيتم تنفيذ حلقة ، وإلا يتم تنفيذ كتلة من التعليمات البرمجية بعد ذلك. بهذه الطريقة نتجنب خطأ تيبيرور: كائن 'نونيتيب' غير قابل للتكرار.
من المهم ملاحظة أنه قبل استخدام الكائن ، نتحقق من عدم وجوده وبعد ذلك فقط نطبق عملية التكرار. هذا يتجنب الأخطاء ويبسط التصحيح وإيجاد المشاكل في التعليمات البرمجية.
إذا كنت تحصل على خطأ تيبيرور: 'نونيتيب' الكائن غير قابل للتكرار ، فمن المستحسن للتحقق من الكائن الذي يتم تطبيق عملية التكرار لقيمته. يجدر أيضا الانتباه إلى كيفية تهيئة الكائن وتعيينه ، وربما يكمن مصدر الخطأ هنا.
التحقق من القيم قبل استخدامها
عند العمل مع برمجة بايثون ، يحدث خطأ تيبيرور في بعض الأحيان: كائن' نونيتيب ' غير قابل للتكرار. يشير هذا الخطأ إلى أن الكود يتكرر (يتكرر من خلال العناصر) لكائن من النوع لا شيء ، وهو أمر مستحيل ، لأن هذا الكائن غير قابل للتكرار.
تتمثل إحدى طرق تجنب هذا الخطأ في التحقق من القيم قبل استخدامها. يتيح لك هذا الفحص منع حدوث خطأ والتعامل مع المواقف التي تكون فيها القيمة مفقودة.
يمكن تمثيل مثال للتحقق من وجود قيمة على النحو التالي:
| كود | الشرح |
|---|---|
| التحقق من أن القيمة ليست لا شيء. |
بالإضافة إلى ذلك ، يمكنك إضافة التحقق من التكرار للكائن:
| كود | الشرح |
|---|---|
| التحقق من أن القيمة ليست بلا وهي كائن قابل للتكرار. |
يمكنك أيضا استخدام التعبيرات الشرطية لكتابة الشيكات بشكل أكثر إحكاما.:
| كود | الشرح |
|---|---|
| تعيين قيمة لمتغير القيمة إذا لم يكن بلا ، وإلا قم بتعيين قائمة فارغة ([]). |
يساعد استخدام التحقق من القيم قبل استخدامها على تجنب الأخطاء ويجعل الكود أكثر مرونة في المواقف المختلفة. هذه قاعدة مفيدة عند العمل مع لغة برمجة بايثون.
استخدام العوامل الشرطية للتعامل مع لا شيء
لا شيء هو قيمة خاصة في بيثون التي تستخدم للإشارة إلى عدم وجود قيمة أو الفراغ. خطأ تيبيرور:' نونيتيب ' الكائن غير قابل للتكرار يحدث عندما نحاول تكرار (تمرير من خلال العناصر) على كائن من نوع لا شيء ، وهو غير قابل للتكرار.
للتعامل مع مثل هذه المواقف ، يوصى باستخدام عبارات شرطية مثل إذا و آخر ، والتي تسمح لك بفحص وتنفيذ إجراءات معينة اعتمادا على قيمة المتغير.
مثال:
| كود | الوصف |
|---|---|
| للعنصر في قائمتي: |
| طباعة (البند) | |
|---|---|
| طباعة ("لا توجد بيانات متاحة") |
آخر:
| # معالجة البيانات | |
|---|---|
| ... |
في هذه الوظيفة ، نتحقق مما إذا كانت وسيطة البيانات هي كائن من النوع لا شيء. إذا كانت هذه هي الحالة ، فإننا نعرض الرسالة "لا توجد بيانات متاحة". خلاف ذلك ، نقوم بمعالجة البيانات.
استخدام العوامل الشرطية يساعد على منع حدوث خطأ تيبيرور:' نونيتيب ' الكائن غير قابل للتكرار وضمان المعالجة الصحيحة للقيم من نوع لا شيء.
استخدام وظيفة إيسينستانس للتحقق من نوع البيانات
أحد الأخطاء الأكثر شيوعا التي يمكن أن يرتكبها مطورو بايثون المبتدئون هو استخدام عمليات التكرار (على سبيل المثال ، حلقة) مع كائنات غير قابلة للتكرار. قد يؤدي هذا إلى خطأ تيبيرور: كائن' نونيتيب ' غير قابل للتكرار.
لتجنب الخطأ من التكرار على الكائنات غير قابلة للتكرار ، يمكن بيثون استخدام وظيفة إيسينستانس للتحقق من نوع البيانات قبل استخدام لحلقة أو غيرها من العمليات التي تتطلب التكرار.
وظيفة إيسينستانس يسمح لك للتحقق ما إذا كان كائن معين هو مثيل من فئة معينة أو نوع. بناء جملة الدالة هو كما يلي:
وظيفة
الوصف
من إيسينستانس(أوبج ، كلس)
يتحقق ما إذا كان الكائن أوبج هو مثيل من فئة كلس أو نوع
قيمة الإرجاع للدالة إيسينستانس هي قيمة منطقية من صواب أو خطأ ، اعتمادا على ما إذا كان الكائن المحدد هو مثيل من الفئة أو النوع المحدد.
على سبيل المثال ، يمكنك استخدام وظيفة إيسينستانس للتحقق مما إذا كان كائن معين قابل للتكرار:
- [1 ، 2 ، 3]
- إذا إيسينستانس(أوبج ، إيترابل):
- للبند في أوبج:
طباعة (البند)
آخر:
طباعة ("الكائن غير قابل للتكرار")
في هذا المثال ، نتحقق أولا مما إذا كان كائن الكائن قابلا للتكرار باستخدام دالة إيسنستانس والتحقق من أن الكائن هو مثيل للفئة القابلة للتكرار. إذا كان الاختيار يعود صحيح ، ثم نقوم بتشغيل لحلقة لتكرار على الكائن وطباعة عناصره. خلاف ذلك ، نقوم بإخراج رسالة مفادها أن الكائن غير قابل للتكرار.
وبالتالي ، فإن استخدام وظيفة إيسينستانس يتجنب أخطاء التكرار على الكائنات غير القابلة للتكرار ويزيد من موثوقية ومرونة كود بايثون.
باستخدام محاولة - باستثناء بناء للتعامل مع الاستثناءات
اكتبخطأ خطأ: الكائن' نونيتيب ' غير قابل للتكرار هو واحد من الأخطاء الأكثر شيوعا التي تحدث عند العمل مع البيانات في بيثون. يحدث هذا الخطأ عندما نحاول التكرار على كائن له قيمة لا شيء.
لتجنب خطأ تيبيرور: كائن 'نونيتيب' غير قابل للتكرار ، يمكنك استخدام محاولة - باستثناء بناء. يسمح لك هذا التصميم باعتراض خطأ ومنع الإنهاء الطارئ للبرنامج.
مثال على استخدام محاولة - باستثناء بناء للتعامل مع خطأ تيبيرور: كائن 'نونيتيب' غير قابل للتكرار:
ضع الرمز الذي قد يسبب الخطأ في كتلة المحاولة.
أضف كتلة باستثناء تشير إلى نوع الخطأ المراد اعتراضه.
في الكتلة باستثناء ، تنفيذ الإجراءات اللازمة لمعالجة الخطأ أو عرض رسالة خطأ.
مثال على الكود:
حاول:
# التعليمات البرمجية التي قد تسبب خطأ
للبند في لا شيء:
طباعة (البند)