Решал задачу, написал код, выводит ошибку out of range, не могу понять как решить данную проблему
текст задачи: создайте функцию, которая принимает строку и возвращает true или false в зависимости от того, является ли формула правильной или нет:
пример: 15*3=45 (выводит true)
51-10 = 4 (выводит false)
мой код:
text = input()
znak = '!'
string_number = ""
a1 = 0
a2 = 0
list = []
for i in range (len(text)):
if text[i] == '+' or text[i] == '-' or text[i] == '*' or text[i] == '/':
znak = text[i]
elif text[i].isdigit():
if text[i+1].isdigit():
string_number += text[i]
else:
if znak == '!':
string_number += text[i]
a1 = int(string_number)
else:
a2 = int(string_number)
if znak == '+':
a1 += a2
elif znak == '-':
a1 -= a2
elif znak == '*':
a1 *= a2
elif znak == '/':
a1 /= a2
elif text[i] == '=':
list.append(a1)
print(a1)
znak = '!'
list.append(a1)
print(a1)
flag = True
for i in range (len(list)):
if list[i] != list[0]:
flag = False
print(flag)
заранее спасибо за помощь