Lv0. 숨어있는 숫자의 덧셈(0)

zz·2023년 2월 27일
0

프로그래머스

목록 보기
15/36
post-custom-banner

[숨어있는 숫자의 덧셈(0)]

문제 설명

문자열 my_string이 매개변수로 주어집니다. my_string안의 모든 자연수들의 합을 return하도록 solution 함수를 완성해주세요.

제한사항

  • 1 ≤ my_string의 길이 ≤ 1,000
  • my_string은 소문자, 대문자 그리고 한자리 자연수로만 구성되어있습니다.

입출력 예

my_stringresult
"aAb1B2cC34oOp"10
"1a2b3c4d123"16

풀이

내 풀이

def solution(my_string):
    answer = 0
    for digit in my_string:
        if digit.isdigit():
            answer += int(digit)
    return answer

조잡한 코드.. isnumeric()이나 isalpha() isdigit()을 사용해서 숫자인지 아닌지 판독한 후에 정리하면 된다
중간에 왜인지 모르지만 isnumeric()라인이 돌아가지 않아서 좀 애먹었다

다른 사람 풀이 1

def solution(my_string):
    return sum(int(i) for i in my_string if i.isdigit())
import re

def solution(my_string):
    return sum(int(n) for n in re.sub('[^1-9]', '', my_string))

regular expression으로 처리한 string 더미..

def solution(my_string):
    answer = 0
    for i in my_string:
        try:
            answer = answer + int(i)
        except:
            pass

    return answer
profile
응애 나 애기개발자
post-custom-banner

0개의 댓글