본문 바로가기

알고리즘/Python 기초

파이썬 - 핸드폰 번호 가리기(lv.1)

문제 ) 프로그래머스 - 핸드폰 번호 가리기(lv.1)

📌 문제 설명

프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.

전화번호가 문자열 phone_number 주어졌을 , 전화번호의 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution 완성해주세요.

 

📌 제한 사항

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

📌 입출력 예

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

✏️ 처음 생각한 방법 : for 반복문에 뒤 네 자리 제외한 길이만큼 '*' 추가하기

def solution(phone_number):

    answer = ''
    for i in range(0, len(phone_number)-4):
        answer += '*'
    return answer + phone_number[-4:]

 

✏️ 두 번째 생각한 방법 : for _ in 뒷 네 자리 제외한 숫자 전체를 '*'로 바꾸고 join() 합치기

def solution(phone_number):

	return ''.join(['*' for _ in phone_number[:-4]]) + phone_number[-4:]

 

✏️ 다른 분 답안.... 문자열은 곱하기가 가능!! (기초 문법인데 적용을 못했다..ㅠㅠ)

def solution(phone_number):

    return '*' * (len(phone_number)-4) + phone_number[-4:]