كيفية تحويل الجمل إلى أعداد صحيحة في بايثون

على غرار الطريقة المضمنة str()، تقدم Python أيضًا int()طريقة سهلة تأخذ كائن سلسلة كوسيطة وتعيد عددًا صحيحًا.

مثال على الاستخدام:

# Here age is a string object age = "18" print(age) # Converting a string to an integer int_age = int(age) print(int_age)

انتاج:

18 18

على الرغم من أن المخرجات متشابهة بصريًا ، ضع في اعتبارك أن السطر الأول عبارة عن كائن سلسلة بينما السطر التالي هو كائن عدد صحيح. هذا موضح بشكل أكبر في المثال التالي:

age = "18" print(age + 2)

انتاج:

Traceback (most recent call last): File "", line 1, in  TypeError: cannot concatenate 'str' and 'int' objects

يجب أن يوضح لك الخطأ أنك بحاجة إلى تحويل ageالكائن إلى عدد صحيح قبل إضافة شيء إليه.

age = "18" age_int = int(age) print(age_int + 2)

انتاج:

20

لكن ضع في اعتبارك هذه الحالات الخاصة:

  • ستعيد النقطة العائمة (عدد صحيح مع جزء كسري) كوسيطة عدد العائم مقربًا إلى أسفل إلى أقرب عدد صحيح صحيح. على سبيل المثال: print(int(7.9))سوف تطبع 7. من ناحية أخرى ، print(int("7.9"))سيؤدي إلى حدوث خطأ حيث لا يمكن تحويل عدد عشري ككائن سلسلة إلى عدد صحيح.
Traceback (most recent call last): File "", line 1, in  ValueError: invalid literal for int() with base 10: '7.9'
  • الكلمات المعطاة كوسيطة سترجع الخطأ نفسه على سبيل المثال ، print(int("one"))سيعود:
Traceback (most recent call last): File "", line 1, in  ValueError: invalid literal for int() with base 10: 'one'