소소한 컴퓨터 이야기

문자열 다루기 기본

by Cori

문제

문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요.

예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.

 

제한사항

· s는 길이 1 이상, 길이 8 이하인 문자열입니다. 

 

입출력 예

s return
'a234' false
'1234' true

풀이

1. Me

def is_numeric(s):
    num = ['0','1','2','3','4','5','6','7','8','9']
    
    for i in s:
        if i not in num:
            return False   
    return True 

def solution(s):
    if (len(s) == 4 or len(s) == 6) and is_numeric(s):
        return True 
    return False

문자열이 숫자로만 구성되어 있는지 여부를 확인하는 함수가 생각이 안나, not in 연산자를 활용해 해당 함수를 직접 구현했다. 

 

2. Others

def alpha_string46(s):
    return s.isdigit() and len(s) in (4, 6)

len(s) == 4 or len(s) == 6 -> len(s) in (4, 6)으로 간결하게 작성, isdigit() 함수를 활용하여 숫자로만 구성되어 있는지 확인했다.   

* isdigit() 함수 or isnumeric() 함수 둘 중 아무거나 사용해도 상관 x 

'CS > Coding Test' 카테고리의 다른 글

두 정수 사이의 합  (0) 2021.08.21
문자열 내 p와 y의 개수  (0) 2021.08.21
서울에서 김서방 찾기  (0) 2021.08.21
수박수박수박수박수 ?  (0) 2021.08.21
시저 암호  (0) 2021.08.21

블로그의 정보

코딩하는 오리

Cori

활동하기