본문 바로가기
🛠️Skill/Python

[Python] 숫자인지 문자인지 확인하기 isdigit / isalpha

by Istj_eff 2022. 11. 2.

1. 숫자인지 확인 - isdigit( ), isnumeraic( ), isdecimal( )

a = '1234'
print(a.isdigit()) # True
print(a.isnumeric()) # True
print(a.isdecimal()) # True

 

차이점

isdigit( ) : 어떤 문자열이 숫자의 형태이면 무조건 True를 반환함

isnumeric( ) : 숫자값 표현에 해당하는 문자열이면 True를 반환함 (제곱근 및 분수, 거듭제곱도 True)

isdecimal( ) : 어떤 문자열이 int형으로 변환이 가능하면 True를 반환함 (특수문자 중 숫자모양을 숫자로 치지않음)

 

a = '3²'
print(a.isdigit()) # True
print(a.isnumeric()) # True
print(a.isdecimal()) # False

 

 

2. 문자인지 확인 - isalpha( )

주어진 문자열이 문자로만 이루어져있는지 확인하고, 공백이 있으면 False를 반환한다.

a = 'abcd'
print(a.isalpha()) # True

a = 'python is good'
print(a.isalpha()) # False

a = 'a234'
print(a.isalpha()) # False

 

3. 숫자 + 문자인지 확인 - isalnum( )

주어진 문자열이 문자 + 숫자로만 되어있는지 확인하고, 공백이 있으면 False를 반환한다. (둘중 하나여도 True)

a = 'abcd123'
print(a.isalnum()) # True

a = '123 python'
print(a.isalnum()) # False

a = '1234'
print(a.isalnum()) # True

 

4. 프로그래머스 예시 - LV1. 문자열 다루기 기본

def solution(s):
    if (len(s) == 4 or len(s) == 6) and s.isdigit():
        return True
    else:
        return False
  
# 2
def solution(s):
    return s.isdigit() and len(s) in (4,6)

 

https://school.programmers.co.kr/learn/courses/30/lessons/12918

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

 

댓글