Я пишу сценарий Python как школьное упражнение. Он должен уметь решать линейные уравнения 2х2 и 3х3. Я проверяю, есть ли, например, только + y, чтобы сделать это + 1y. Это работает без проблем, если я запускаю скрипт, но если я отлаживаю его, я получаю TypeError, когда сравниваю строки в операторе if. Это мой код:
step11 = equation1.split("=")
if step11[0][0] == "x" or step11[0][1] == "x":
if step11[0][0] == "x":
step11[0] = step11[0][:0] + '1' + step11[0][0:]
elif step11[0][0] == "-" and step11[0][1] == "x":
step11[0] = step11[0][:1] + '1' + step11[0][1:]
step12 = step11[0].split("x")
if step12[1][0] == "y" or step12[1][1] == "y":
if step12[1][0] == "y":
step12[1] = step12[1][:0] + '1' + step12[1][0:]
elif step12[1][0] == "-" and step12[1][1] == "y":
step12[1] = step12[1][:1] + '1' + step12[1][1:]
step13 = step12[1].split("y")
Я получаю сообщение об ошибке в строке 8:
if step12[1][0] == "y" or step12[1][1] == "y":
Я не понимаю, почему эта ошибка возникает и почему она возникает только в режиме отладки. Как я мог решить эту проблему?
Редактировать: линейные уравнения выглядят так: ax + by = c dx + ey = f
Здесь весь код, необходимый для линейного уравнения 2x2:
https://drive.google.com/file/d/1q7x5ZVLx7b0lZQOcSNAPGGWQcIte4I0S/view?usp=sharing
-> не удалось вписать код