문자열 my_string이 매개변수로 주어집니다. my_string안의 모든 자연수들의 합을 return하도록 solution 함수를 완성해주세요.
1 ≤ my_string의 길이 ≤ 1,000
my_string은 소문자, 대문자 그리고 한자리 자연수로만 구성되어있습니다.
isdigit 함수를 이용해서 문자열 안의 숫자를 판별.
숫자로 판별된 문자를 정수로 형변환한 뒤 answer 리스트에 넣는다.
answer 리스트의 합을 sum 함수를 이용하여 계산.
def solution(my_string):
answer = []
for i in range(len(my_string)):
if my_string[i].isdigit() is True]):
answer.append(int(my_string[i]))
return sum(answer)
리스트 내포(List Comprehension)을 이용하여 아래와 같이 나타낼 수 있다.
(여기서 lambda 함수를 사용해도 괜찮다.)
def solution(my_string):
return sum([int(my_string[i]) for i in range(len(my_string)) if my_string[i].isdigit() is True])
# lambda 함수 표현
solution = lambda my_string:sum([int(my_string[i]) for i in range(len(my_string)) if my_string[i].isdigit() is True])