Member 13852296 Ответов: 1

Как найти крайнее левое число и/или оператор в строке? Строка-это арифметическое выражение.


Предположим, что строка-это "1+2-3/4*5"
Если я даю позицию как 2. тогда как я возвращаю значение 2 для самого левого числа и - для самого левого оператора

Что я уже пробовал:

Я выяснил это для оператора. Но мне нужна помощь для струны.
op=['+','-','*','/']
    
    for i in range(len(txt)):
        if txt[i] in op:
            return(i)
            break
    else:
        return(-1)

Member 13852296

Извините, что забыл добавить это.
Если это 2 значное число то оно должно возвращать 2 значное число adn а не только первую цифру всей строки

1 Ответов

Рейтинг:
2

Richard MacCutchan

Вам нужно разобрать строку на токены, числа и операторы, а затем выполнить вычисления по результатам. Видеть строка для польской нотации - поиск Google[^]