אנדרואיד

כיצד להמיר מיתרים למספרים שלמים בפיתון

Os humildes serão exaltados (Homilia Diária.1619: Sábado da 30.ª Semana do Tempo Comum)

Os humildes serão exaltados (Homilia Diária.1619: Sábado da 30.ª Semana do Tempo Comum)

תוכן עניינים:

Anonim

כל סוגי הנתונים בפיתון, כולל מספרים שלמים ומיתרים, הם אובייקטים. לעתים קרובות בעת כתיבת קוד פייתון, יהיה עליכם להמיר סוג נתונים אחד למשנהו. לדוגמה, כדי לבצע פעולת מתמטיקה על מספר המיוצג כמחרוזת, יש להמיר אותה למספר שלם.

במדריך זה נראה לך כיצד להמיר מחרוזת פייתון למספר שלם.

Python int() פונקציה

הפונקציה המובנית int() מחזירה אובייקט מספר שלם עשרוני ממספר מסוים או מחרוזת מסוימת. זה לובש את הטופס הבא:

int(x, base=10)

הפונקציה מקבלת שני טיעונים:

  • x - מחרוזת או מספר להמרה למספר שלם. base - הוא מייצג את מערכת המספרים של הטענה הראשונה. הערך יכול להיות 0 ו- 2–36. אם לא ניתן בסיס, ברירת המחדל היא 10 (מספר שלם עשרוני).

בדרך כלל מספרים שלמים באים לידי ביטוי בסימן הקסדצימלי (בסיס 16), עשרוני (בסיס 10), אוקטלי (בסיס 8) או סימון בינארי (בסיס 2).

אם לא ניתן לייצג את הטענה הנתונה כמספר שלם, הפונקציה תזרוק חריג ValueError .

המרת מיתר פייתון למספר שלם

ב- Python, 'מחרוזת' היא רשימה של תווים המוצהרים באמצעות ציטוטים יחידים ( ' ), כפול ( " ) או משולש ( """ ).

אם מוגדר משתנה המכיל מספרים בלבד באמצעות ציטוטים, סוג הנתונים שלו מוגדר למחרוזת. שקול את הדוגמה הבאה:

days = "23" type(days)

הפונקציה type() מראה לנו כי days הם אובייקט מחרוזת.

בואו ננסה לבצע פעולת מתמטיקה על המשתנה:

print(days+5)

פייתון יזרוק שגיאת חריג מסוג TypeError מכיוון שאיננו יכולים לבצע חישוב תוספות עם מחרוזת ומספר שלם:

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

כדי להמיר ייצוג מחרוזות של מספר שלם עשרוני ל- int , העבירו את המחרוזת int() , המחזירה מספר שלם עשרוני:

days = "23" days_int = int(days) type(days_int)

print(days_int+5)

28

אם המספר כולל פסיקים, סימון אלפים, מיליונים וכו ', עליך להסיר את הפסיקים לפני שמעבירים את המספר int() :

total = "1, 000, 000" int(total.replace(", ", ""))

1000000

בעת המרת מחרוזות המייצגות מספרים שלמים במערכות מספר שונות, ודא שאתה משתמש base הנכון.

לדוגמה, במערכת ההקסדצימאלית, המספר 54732 מיוצג כ- D5CF . כדי להמיר אותו למספר שלם עשרוני עליך להשתמש בבסיס 16:

int("D5CF", 16)

54735

אם אתה מעביר את מחרוזת D5CF int() מבלי להגדיר בסיס, זה יזרוק חריג ValueError :

int("D5CF")

Traceback (most recent call last): File " ", line 1, in ValueError: invalid literal for int() with base 10: 'D5CF' Traceback (most recent call last): File " ", line 1, in ValueError: invalid literal for int() with base 10: 'D5CF' Traceback (most recent call last): File " ", line 1, in ValueError: invalid literal for int() with base 10: 'D5CF'

סיכום

ב- Python ניתן להמיר מחרוזת למספר שלם באמצעות הפונקציה int() .

פיתון