1. 프로그래머스 python 코딩테스트 입문
Level 1. 핸드폰번호 가리기
프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.
1. 정답 확인
1.
"문자열{}".format(조건)
def solution(phone_number): return "{}{}".format("*" * (len(phone_number) - 4), phone_number[-4:])
"{}{}"
: 두 개의 자리 표시자{}
가 있음.
- 첫번째
{}
:"*" * (len(phone_number) - 4)
: 전화번호 뒷 4자리를 제외한 길이만큼 *을 생성- 두번째
{}
:phone_number[-4:]
: 전화번호 마지막 4자리[-4:]
::
의 오른쪽이 생략 = 끝까지 포함,-4
는 문자열의 끝에서 4번째,문자열의 끝에서부터 4글자
[:-4]
::
의 왼쪽이 생략 = 처음부터 시작,:-4
는 뒤에서 4번째 인덱스 전까지,뒤에서 4글자를 제외하고 앞부분만 갖고옴
2. 정답 확인
2.
f'문자열{}'
def solution(phone_number): return f"{'*' * (len(phone_number) - 4)}{phone_number[-4:]}"
- f-문자열 이용, format() 보다 간단하게 풀이함.
3. 정답 확인
3. 문자열
+
더하기def solution(phone_number): return "*"*(len(phone_number)-4)+phone_number[-4:]
- 간결한 풀이
format()과 f-연산자
혼공파 책 p146 참고.