Language/파이썬
[파이썬] 숫자 판별 함수(isdigit(), isdecimal(), isnumeric())
땅어
2020. 5. 30. 19:42
728x90
300x250
파이썬에는 숫자를 판별하는 기본 함수가 내장되어있다. 말그대로 해당 문자열이 숫자인지 아닌지를 판별하는 것이다. 여기엔 세 가지가 있다. isdigit(), isdecimal(), isnemeric()이다.
isdigit()
해당 문자열이 '숫자'로 이루어져 있는지 검사한다.
x = '3²'
x.isdigit()
# True
x.isdecimal()
# False
int(x)
# ERROR!!!!
isdecimal()
해당 문자열이 0~9까지의 수로 이루어진 것인지 검사한다. 다시 말해, int로 바로 변환할 수 있는 수인지를 검사한다. 때문에 위의 코드 예시에서 3²를 isdecimal로 검사했을 때 False가 나온 것이다.
isnumeric()
numeric하다는 것은 좀 더 폭넓은 의미를 가진다. 이 함수는 '수로 볼 수 있는 것'인 경우 True를 반환한다. 예컨대, “½”과 같은 수는 isdigit(), isdecimal()에서는 False지만 isnumeric()에서는 True이다.
728x90
300x250