Разделение математической строки на список, сохраняя все в подходящих скобкахPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Разделение математической строки на список, сохраняя все в подходящих скобках

Сообщение Anonymous »

Я пытаюсь получить любую математическую строку для разделения на список операторов (т.е. "+" , "-" , "/" , "*" ), сохраняя что-либо в соответствующем количестве скобков вместе как один элемент списка.

Код: Выделить всё

import math

equation = "5+5*10"
equation_segmented = ["5", "+", "5", "*", "10"]

equation = "(2*2)-5*(math.sqrt(9)+2)"
equation_segmented = ["(2*2)", "-", "5", "*", "(math.sqrt(9)+2)"]

equation = "(((5-3)/2)*0.5)+((2*2))*(((math.log(5)+2)-2))"
equation_segmented = ["(((5-3)/2)*0.5)", "+", "((2*2))", "*", "(((math.log(5)+2)-2))"]
note : алфавитные буквы (или символы, такие как «π»), также должны быть включены в кронштейны.

Код: Выделить всё

import re

equation_segmented = re.split("([\+|\-|\*|\/]|\(.*\))", equation)
< /code>
Проблема здесь, однако, заключается в том, что она не учитывает соответствующие кронштейны.equation_segmented = re.split("([\+|\-|\*|\/])", equation)
) и подумал о том, чтобы просто разделить строку операторами, а затем «» .join () Все элементы списка в соответствующих скобках после этого - еще раз, безрезультатно.>

Подробнее здесь: https://stackoverflow.com/questions/796 ... n-matching
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»