코딩/프로그래머스

[프로그래머스/Programmers] 핸드폰 번호 가리기 파이썬

thisisjade 2021. 11. 8. 22:47
728x90

문제 설명

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

제한 조건

  • s는 길이 4 이상, 20이하인 문자열입니다.

 

입출력 예

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

 

나의풀이

def solution(phone_number):
    a=''
    for i in range(len(phone_number)-4):
        a = a +"*"
    a +=phone_number[-4:]
    answer = a
    return answer

 

저는 for문을 통해 입력받은 (len(phone_number)-4)번 a에 계속 *을 더해주고.

그 후에 뒤에 4개를 phone_number의 뒤에서부터 4자리를 더 해주는 방식으로 했습니다.

 

다른 사람의 풀이

def hide_numbers(s):

     return "*"*(len(s)-4) + s[-4:]

 

다른사람의 풀이를 보니 짧고 정확한 코드 하는 법을 더 배워야 할 것 같습니다 ㅎㅎ

제가 6줄로 만든 것을 한 줄로 만드시네요 ㄷㄷ

728x90