Python int() 函式



Python 的 int() 函式用於將給定值轉換為整數。它可以將各種型別的資料(例如數字字串或浮點數)轉換為整數。

如果給定值是浮點數,則 int() 函式會截斷小數部分,返回整數部分。此外,它可以與第二個引數一起使用,以指定將二進位制、八進位制或十六進位制表示形式的數字轉換為十進位制整數的基數。

語法

以下是 Python int() 函式的語法:

int(x [,base])

引數

此函式接受兩個引數,如下所示:

  • x - 它表示要轉換為整數的值。

  • base (可選) - 它指定給定數字的基數;預設為 10,它以該基數的“x”作為字串進行轉換。

返回值

此函式返回一個整數物件。

示例 1

以下是 Python int() 函式的示例。在這裡,我們將字串“123”轉換為整數:

string_num = "123"
integer_num = int(string_num)
print('The integer value obtained is:',integer_num)

輸出

以下是上述程式碼的輸出:

The integer value obtained is: 123

示例 2

在這裡,我們使用 int() 函式將浮點數“7.8”轉換為整數:

float_num = 7.8
int_num = int(float_num)
print('The corresponding integer value obtained is:',int_num)

輸出

我們可以在下面的輸出中看到,小數部分被截斷了:

The corresponding integer value obtained is: 7

示例 3

如果將包含非數字字元的字串傳遞給 int() 函式,它將引發 ValueError。

在這裡,我們將字串“42 apples”轉換為整數:

# Example with Error
mixed_string = "42 apples"
number_part = int(mixed_string)
print(number_part)

輸出

我們可以在下面的輸出中看到,由於字串包含非數字字元(' apples'),因此在轉換過程中導致 ValueError:

Traceback (most recent call last):
  File "C:\Users\Lenovo\Desktop\untitled.py", line 3, in <module>
    number_part = int(mixed_string)
ValueError: invalid literal for int() with base 10: '42 apples'

示例 4

現在,我們處理一個包含數字和非數字字元的字串。

首先,我們從“mixed_string”中提取出所有數字字元。我們使用列表推導式建立一個名為“numeric_part”的變數,該變數過濾掉非數字字元,最終得到一個只包含數字“42”的字串。最後,我們使用int()函式將此字串轉換為整數。

# Example without Error
mixed_string = "42 apples"
numeric_part = ''.join(char for char in mixed_string if char.isdigit())
number_part = int(numeric_part)
print('The integer value obtained is:',number_part)

輸出

產生的結果如下所示:

The integer value obtained is: 42
python_type_casting.htm
廣告