Python中檢查變數是否為整數5種方法

banq發表於2024-05-19

讓我們探索一下 Python 中檢查變數是否為整數的不同方法。

1. 使用 isinstance()
Python 中的 isinstance() 函式是一個內建函式,用於檢查變數是否是特定類或其子類的例項。以下是我們如何使用 isinstance() 來檢查變數是否為整數:

def is_integer(n):
    return isinstance(n, int)

print(is_integer(5))  # Outputs: True
print(is_integer(5.5))  # Outputs: False
print(is_integer(<font>"5"))  # Outputs: False

在此示例中,當變數為整數時,is_integer() 返回 True,否則返回 False。

2.使用type()
isinstance() 檢查變數是否是特定類或其子類的例項,而 type() 函式嚴格檢查變數是否是特定類的例項而不是其子類。以下是如何使用 type() 檢查變數是否為整數:

def is_integer(n):
    return type(n) is int

print(is_integer(5))  # Outputs: True
print(is_integer(5.5))  # Outputs: False
print(is_integer(<font>"5"))  # Outputs: False


3. 使用數學模組
我們還可以使用 Python 數學模組來檢查數字是否為整數。當我們想要檢查浮點數實際上是否是整數時,此方法非常有效。

import math

def is_integer(n):
    if isinstance(n, float):
        return n.is_integer()
    elif isinstance(n, int):
        return True
    else:
        return False

print(is_integer(5))  # Outputs: True
print(is_integer(5.0))  # Outputs: True
print(is_integer(5.5))  # Outputs: False
print(is_integer(<font>"5"))  # Outputs: False


4.異常處理
有時,我們可能想檢查變數是否可以轉換為整數,即使它還不是整數。當從檔案或使用者輸入讀取資料時,這非常有用。我們可以使用 try/ except 塊來執行此操作:

def is_integer(n):
    try:
        int(n)
        return True
    except ValueError:
        return False

print(is_integer(5))  # Outputs: True
print(is_integer(5.5))  # Outputs: True
print(is_integer(<font>"5"))  # Outputs: True
print(is_integer(
"5.5"))  # Outputs: False

5. 檢查浮點數是否為整數
如果您正在處理浮點數並想要檢查它們是否可以是整數(即它們是整數),您可以使用所有浮點數例項上可用的 is_integer() 方法:

def is_integer(n):
    return isinstance(n, float) and n.is_integer()

print(is_integer(5.0))  # Outputs: True
print(is_integer(5.5)) 

 

相關文章