Coding Test

[Python 프로그래머스] 문자열을 정수로 바꾸기

hyungminjeon 2024. 6. 6. 15:32

[문제]

[해결]

def solution(s):
    result = 0
    for idx, number in enumerate(str(s)[::-1]):
        if number == '-':
            result *= -1
        else:
            result += int(number) * 10**idx
    return result

[정리 및 새롭게 알게 된 점]

1. 먼저 str(s)[::-1] 를 loop 함으로써 인자의 배열을 거꾸로 하여 idx와 number 값을 추출하였다.

(ex. s가 "-1234"이면 "-4321" 순으로 element를 추출한다)

2. number 값이 '-'인 경우 음수이므로 result에 -1을 곱해주고 '-'이 아닌 수인 경우 10**idx 를 곱해주어 숫자형데이터로 만들어 준 후 result에 값을 추가하였다.