문제 설명
프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.

제한 조건
phone_number는 길이 4 이상, 20이하인 문자열입니다.


입출력 예

phone_number  return
"01033334444"  "*******4444"
"027778888" "*****8888"

 

def solution(phone_number):
    
    number = list()

    for i in range(len(phone_number)):

        if i >= len(phone_number)-4: # 맨끝에서 앞으로 4자리까지는 숫자를 그대로 나타냄
            number.append(phone_number[i])
        else: 
            number.append('*')

    return ''.join(number)

 

>>> 참고

다른 사람의 풀이를 보니 리스트를 만들어 append하는 대신에 문자열을 곱하는 형식으로 (ex."*"*(len(s)-4)) 하는 게 더 깔끔한 것 같다.

+ Recent posts