Python - String isdigit(), 문자열이 숫자인지 확인

파이썬에서 문자열이 숫자로만 구성되어있는지 확인할 때 String의 isdigit() 함수를 사용할 수 있습니다.

1. String isdigit()의 Syntax

isdigit()은 인자를 받지 않으며 문자열 객체에서 호출할 수 있습니다. 문자열이 숫자(digit)로만 구성되어있으면 true를 리턴하며, 그렇지 않으면 false를 리턴합니다.

string.isdigit()

2. isdigit()으로 문자열이 숫자로만 구성되어있는지 판별

'1234'처럼 문자열의 문자들이 모두 숫자로 되어있을 때 isdigit()은 true를 리턴합니다. 숫자가 아닌 알파벳같은 문자가 끼어있으면 false를 리턴합니다.

str = '1234'
print(str.isdigit())

str = 'abc1234'
print(str.isdigit())

Output:

True
False

3. 음수 또는 소수점에 대한 isdigit() 결과

isdigit()은 문자열의 구성 요소가 모두 숫자인지 확인하는 함수입니다. 문자열에 +- 같은 부호가 있다면 숫자가 아니기 때문에 isdigit()은 false를 리턴합니다. 또한 소수점도 숫자가 아니기 때문에 false가 리턴됩니다.

str = '-1234'
print(str.isdigit())

str = '+1234'
print(str.isdigit())

str = '12.34'
print(str.isdigit())

Output:

False
False
False

4. 유니코드에 대한 isdigit() 결과

유니코드는 \u00B2는 문자열에 숫자가 아닌 알파벳을 포함하고 있습니다. 하지만 유니코드 자체로 보면 숫자를 의미하기 때문에 true를 리턴합니다.

str = "\u0030"  # unicode for 0
print(str.isdigit())

str = "\u00B2"  # unicode for ²
print(str.isdigit())

Output:

True
True
Loading script...
codechachaCopyright ©2019 codechacha