(Python) Исправить ошибку в коде(очень маленьком)

Смысл кода состоит в том, что вводится сумма чисел в виде строки. (Например 15+3+27) Вывести он должен сумму в виде числа(В данном случае 45) Свой код прикрепил ниже(считает сумму не правильно) Если не сложно, исправьте её, буду очень благодарна.

sum=str(input('Введите сумму трёх чисел(x+y+c):'))
N=0
b=str(0)
for x in sum: 
    if x!='+':
        b=b+x
    else:
        c=int(b)
        N=int(N+c)
print(N)

Ответы (3 шт):

Автор решения: splash58

Не обсуждая алгоритм и стиль, вот работающий код

s = input('Введите сумму трёх чисел(x+y+c):')
N = 0  # тут накапливаем сумму
b = 0  # тут собираем слагаемые
for x in s: 
    if x == '+':
        N += b    # число кончилось, можно складывать
        b = 0     # сбросим аккумулятор
    else:
        b = b*10+int(x)   # добавляем в число младший разряд
N += b  # прибавим последнее число      
print(N)
→ Ссылка
Автор решения: Sergey Gornostaev
v = sum(int(i.strip()) for i in input('Введите сумму трёх чисел(x+y+c):').split('+'))
print(v)
→ Ссылка
Автор решения: ResDT

Можно проще:

print(eval(input('Введите сумму трёх чисел(x+y+c):'))
→ Ссылка