1. 숫자 판별 - isdecimal( ), isdigit( ), isnumeric( )
보통 isdigit( )을 가장 많이 쓴다.
s = "28212"
print(s.isdigit()) # True
# contains alphabets and spaces
s = "Mo3 nicaG el l22er"
print(s.isdigit()) # False
셋 다 숫자 판별에 쓰이는 함수이다. 무슨 차이일까?
- isdecimal( ) ⊆ isdigit( ) ⊆ isnumeric( )
- isdecimal( ): 어떤 문자열이 int형으로 변환이 가능하면 True를 반환한다.
- isdigit( ): 어떤 문자열이 숫자의 형태면 True를 반환한다. (예: 3², ², ..)
- isnumeric( ): 숫자값 표현에 해당하는 문자열이면 True를 반환한다. (예: 3², ², ½, ...)
정확하게 int형으로 변환이 가능한 리터럴인지 판별하고 싶으면 isdecimal( )을 사용하자.
2. 문자열 판별 - isalpha( )
주어진 문자열이 알파벳으로만 구성되어 있는지 판별한다. 공백이 있으면 False를 반환한다.
name = "Monica"
print(name.isalpha()) # True
# contains whitespace
name = "Monica Geller"
print(name.isalpha()) # False
# contains number
name = "Mo3nicaGell22er"
print(name.isalpha()) # False
3. 숫자 + 문자열 판별 isalnum( )
주어진 문자열이 알파벳+숫자로만 구성되어 있는지 판별한다. 알파벳이나 숫자 둘 중 하나로만 구성되어 있어도 True를 반환하고, 공백이 있으면 False를 반환한다.
name = "M234onica"
print(name.isalnum()) # True
# contains whitespace
name = "M3onica Gell22er "
print(name.isalnum()) # False
name = "Mo3nicaGell22er"
print(name.isalnum()) # True
name = "133"
print(name.isalnum()) # True
참고
'프로그래밍 언어 > Python' 카테고리의 다른 글
[Python] 순열, 조합 구현하기 - itertools & recursion (3) | 2021.02.15 |
---|---|
[Python] 파이썬 커스텀 정렬 - sort(), sorted() (0) | 2021.01.04 |
[Python] 리스트 순회 중 변경이 필요할 때 (0) | 2021.01.04 |
[Python] 파이썬 기본 연산 시간복잡도(Big-O) (0) | 2021.01.04 |