목차
728x90
반응형
https://school.programmers.co.kr/learn/courses/30/lessons/12948
문제 설명
프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.
입출력 예
phone_number = 01033334444
return = ***4444
문제 풀이
- for 문에서 range를 len(phone_number)-4 로 하여 뒤에 4자리를 제외 시킴
- replace 함수를 통해 문자열을 * 로 바꿔줌
* 처음에 replace 함수에서 횟수 지정을 하지 않아 테스트에서 실패가 뜸
정답 코드
def solution(phone_number):
for i in range (len(phone_number)-4):
phone_number = phone_number.replace(phone_number[i], '*', 1)
return phone_number
- 다른 사람 코드
def hide_numbers(s):
return "*"*(len(s)-4)+s[-4:]
- 뒤에 4자리를 제외한 나머지숫자를 * 로 바꾸고 뒤에 4자리를 슬라이스해서 더해줌
* 이 문제는 프로그래머스 코딩테스트 연습 1단계 문제입니디.
728x90
반응형
'Python > Coding Test' 카테고리의 다른 글
[Coding Test] 직사각형 별찍기 (0) | 2023.05.09 |
---|---|
[Coding Test] 가운데 글자 가져오기 (0) | 2023.05.08 |
[Coding Test] 정수 제곱근 판별 (0) | 2023.05.06 |
[Coding Test] x만큼 간격이 있는 n개의 숫자 (0) | 2023.05.06 |
[CodingTest] 문자열 다루기 기본 (0) | 2023.04.12 |