내가 좋아하는 일을했다 오래된 파이썬 코드를 발견했다.python의 isinstance()를 사용하여 변수가 숫자인지 제대로 확인하는 방법은 무엇입니까? <code>pep8</code>이 <code>isinstance()</code>이 추천 사용에 대한 불평, 예상대로</p> <pre><code>if type(var) is type(1): ... </code></pre> <p>:
이제 문제는 numbers
모듈은 파이썬 2.6에 추가 된 내가 그래서 if isinstance(var, Numbers.number)
는 해결책이 아니다
파이썬 2.5 +와 함께 작동 코드를 작성해야합니다.
이 경우 적절한 해결책은 무엇입니까? int
, float
및 complex
>>> num = 10
>>> if isinstance(num, (int, float, long, complex)): #use tuple if checking against multiple types
print('yes it is a number')
yes it is a number
>>> isinstance(num, float)
False
>>> isinstance(num, int)
True
>>> a = complex(1, 2)
>>> isinstance(a, complex)
True
numpy를 기꺼이 사용하려면 'numpy.isfinite'가 트릭을해야합니다. –