변수가 정수 Python인지 확인

Manav Narula 2023년10월10일
  1. isinstance()메소드를 사용하여 객체가 Python에서int유형인지 확인
  2. int()메소드를 사용하여 객체가 Python에서int유형인지 확인
  3. float.is_integer()메소드를 사용하여 Python에서 객체가int유형인지 확인
변수가 정수 Python인지 확인

파이썬에서는 숫자를 다룰 때 데이터 유형이 다릅니다. 이는int,floatcomplex데이터 유형입니다.

int데이터 유형은 정수를 나타내는 데 사용됩니다. 이 튜토리얼에서는 변수가int인지 아닌지 확인하는 방법에 대해 설명합니다.

파이썬에서는 일반적으로 객체의 유형을 반환하기 위해type()함수를 확인합니다. 예를 들면

x = 10
print(type(x))
print(type(x) == int)

출력:

<class 'int'>
True

이 방법은 정상적으로 작동 할 수 있지만 다형성의 모든 유연성을 차단합니다. 예를 들어, 객체를int로 서브 클래 싱하고int로 등록 할 것으로 예상하면type()함수로 실패 할 수 있습니다.

다음 코드는이를 보여줍니다.

class def_int(int):
    pass


x = def_int(0)
print(type(x))
print(type(x) == int)

출력:

<class '__main__.def_int'>
False

isinstance()메소드를 사용하여 객체가 Python에서int유형인지 확인

따라서 기존type()대신isinstance()함수를 사용하는 것이 좋습니다. isinstance()함수는 객체가 지정된 하위 클래스에 속하는지 여부를 확인하는 데 사용됩니다. 다음 코드 스 니펫은이를 사용하여int객체를 확인하는 방법을 설명합니다.

y = 10


class def_int(int):
    pass


x = def_int(0)
print(isinstance(y, int))
print(isinstance(x, int))

출력:

True
True

구체적인int클래스 대신 추상 기본 클래스numbers.Integral을 사용하는 것이 좋습니다. 이러한 방식으로int,long및 정수 역할을 할 수있는 사용자 정의 메소드까지 확인할 수 있습니다.

int()메소드를 사용하여 객체가 Python에서int유형인지 확인

int함수를 사용하여이를 달성하기 위해 간단한 로직을 생성 할 수도 있습니다. 객체가int가 되려면이 객체가 전달 될 때int()함수가 반환 한 값과 같아야합니다. 다음 코드는이를 보여줍니다.

x = 10.05

if int(x) == x:
    print("True")
else:
    print("False")

출력:

False

이 메서드는 복잡한 개체로 작업 할 때 유형 오류를 반환합니다.

float.is_integer()메소드를 사용하여 Python에서 객체가int유형인지 확인

이 방법은float객체에만 작동합니다. float 객체의 값이 정수인지 여부를 확인합니다. 예를 들면

x = 10.0
print(float.is_integer(x))

출력:

True
작가: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

관련 문장 - Python Integer