Выражение Python для MathML - PullRequest
2 голосов
/ 20 июля 2011

Я хотел бы иметь возможность преобразовывать математическое выражение Python в содержимое MathML, используя Python.Цель состоит в том, чтобы превратить выражение типа (a * x ^ 2 + b * x + c) / (2 * a) в содержимое MathML пример в Википедии статья вMathML.

Пакет asciimathml будет генерировать отображение MathML, но, насколько я могу судить, не содержимое MathML.

Я не смог найти существующий Googleпакет или даже предложения о том, как это сделать.

Заранее спасибо ...

Ответы [ 2 ]

2 голосов
/ 20 июля 2011

MathDOM: http://mathdom.sourceforge.net/

Делает именно то, что вы хотите.Цитирование страницы:

MathDOM - это набор модулей Python 2.4 (использующих PyXML или lxml и pyparsing), которые импортируют математические термины как Content MathML DOM.В настоящее время он анализирует термины MathML и буквальный инфикс в документе DOM или lxml и записывает термины MathML и литерал infix / prefix / postfix / Python.Элементы DOM улучшены с помощью доменных методов, которые немного упрощают использование DOM.Анализаторы ввода и преобразователи вывода легко расширяемы.

Более новые версии упрощают переносимость кода между версиями PyXML и lxml.Они также расширяют последний с помощью выходного фильтра на основе XSLT для проверки документов Presentational MathML и RelaxNG.PyXML не поддерживает ни один из них.

Редактировать: Найдено здесь.http://www.w3.org/Math/Software/mathml_software_cat_converters.html#Imathdom

0 голосов
/ 22 июля 2011

См. Комментарии, относящиеся к SymPy. Решил мою проблему.

...