나는 이렇게 학습한다/Algorithm & SQL
Create Phone Number
daco2020
2022. 2. 14. 09:37
문제 설명
Write a function that accepts an array of 10 integers (between 0 and 9), that returns a string of those numbers in the form of a phone number.
Example
create_phone_number([1, 2, 3, 4, 5, 6, 7, 8, 9, 0]) # => returns "(123) 456-7890"
The returned format must be correct in order to complete this challenge.
Don't forget the space after the closing parentheses!
해결 방법
1. n에 담긴 숫자 요소들을 문자로 바꾼다.
2. 문자 요소들을 합쳐 문자열로 만든다.
3. 슬라이스로 알맞게 자른다.
4. 적절한 위치에 배치하고 문자열을 반환한다.
def create_phone_number(n):
n_str = ''.join(list(map(str, n)))
phone_number = f"({n_str[:3]}) {n_str[3:6]}-{n_str[6:]}"
return phone_number
만약 함수 없이 인덱스로만 풀려면 다음처럼 풀 수도 있다.
def create_phone_number(n):
phone_number = f"({n[0]}{n[1]}{n[2]}) {n[3]}{n[4]}{n[5]}-{n[6]}{n[7]}{n[8]}{n[9]}"
return phone_number
그리고 str.fomat() 을 이용하면 다음처럼 더 간단하게 풀 수 있다.
def create_phone_number(n):
return "({}{}{}) {}{}{}-{}{}{}{}".format(*n)