تقنية

isdigit في بايثون: هل تعني True نجاح التحويل بـint؟

² تعطي True مع isdigit وترفع ValueError مع int.
نجاح التصنيف.

isdigit لا تضمن نجاح int؛ تصنيف المحارف يختلف عن قبول صيغة عدد. [1] [2]

الخلاصة السريعة

True ليست ضمان تحويل، وFalse لا تثبت استحالته. [1] [2]

  • isdigit لا تضمن نجاح int؛ تصنيف المحارف يختلف عن قبول صيغة عدد. [1] [2]
  • isdigit تشمل بعض محارف الأرقام المرتفعة. [1]
  • مثال مؤلف على CPython 3.12.14: s="²"؛ s.isdigit() تعطي True. [1]
  • int(s) بالأساس العشري ترفع ValueError؛ الرمز المرتفع ليس كتابة "2". [1] [2]
  • لـ"-2": isdigit تعطي False وint تعطي -2؛ ولـ"2": True و2. [1] [2]

فحصان مختلفان

isdigit لا تضمن نجاح int؛ تصنيف المحارف يختلف عن قبول صيغة عدد. [1] [2]

أرقام مرتفعة

isdigit تشمل بعض محارف الأرقام المرتفعة. [1]

نتيجة التصنيف

مثال مؤلف على CPython 3.12.14: s="²"؛ s.isdigit() تعطي True. [1]

s.isdigit() -> True [1]

2 تعطي True و2؛ والنص -2 يعطي False وسالب اثنين.
التحويل ينجح للحالتين.

التحويل والمقارنة

int(s) بالأساس العشري ترفع ValueError؛ الرمز المرتفع ليس كتابة "2". [1] [2]

int(s) -> ValueError [2]

لـ"-2": isdigit تعطي False وint تعطي -2؛ ولـ"2": True و2. [1] [2]

المراجع

  1. Python — isdigit
  2. Python — int

للتوسع: المعرف والكمية.

أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.