문제 설명
문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.
제한 사항
- s는 길이 1 이상, 길이 8 이하인 문자열입니다.
- s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있습니다.
입출력 예
s | return |
"a1234" | false |
"1234" | true |
내 풀이
주어진 문자열의 길이가 4 또는 6이 아니면 False
길이가 4또는 6이면 문자열 s가 숫자로만 이루어져 있는지 판단하는 isdigit() 수행
모두 숫자로 이루어져있으면 True
문자가 하나라도 있으면 False
def solution(s):
if len(s) == 4 or len(s) == 6:
if str.isdigit(s):
return True
else:
return False
else:
return False
다른 사람 풀이
문자열의 길이가 (4, 6) 안에 존재 한다면 즉, 4또는 6이고
문자열 s가 isdigit() 모두 숫자로 이루어졌있다면 True 또는 False값 바로 return
in으로 문자열 길이를 체크한 점이 생각치 못한 방법
isdigit() 를 하면 True 또는 False를 반환하므로 if else를 사용하지 않아도 됨
def alpha_string46(s):
return s.isdigit() and len(s) in (4, 6)
728x90
'코딩테스트' 카테고리의 다른 글
[프로그래머스/파이썬] 행렬의 덧셈 (0) | 2022.09.25 |
---|---|
[프로그래머스/파이썬] 약수의 개수와 덧셈 (0) | 2022.09.25 |
[프로그래머스/파이썬] 문자열 내림차순으로 배치하기 (0) | 2022.09.24 |
[프로그래머스/파이썬] 내적 (0) | 2022.09.23 |
[프로그래머스/파이썬] 없는 숫자 더하기 (0) | 2022.09.23 |