Я подаю sympy.latex
строку, содержащую фракции, и я хотел бы получить ее латексное представление с фракциями «сложенными», то есть набирать как 3/2, а не как \ frac {3} {2}. Я устанавливаю аргумент fold_short_fractions
ключевое слово для True
, но результаты я получаю противоречивы:Латексный принтер Sympy, складывающиеся короткие фракции
>>> from sympy.parsing.sympy_parser import parse_exp
>>> from sympy import latex
>>>
>>> print(latex(parse_expr("3*x**2/y"))) # OK
\frac{3 x^{2}}{y}
>>> print(latex(parse_expr("3*x**2/y"), fold_short_frac=True)) # OK
3 x^{2}/y
>>>
>>> print(latex(parse_expr("3/2"))) # OK
\frac{3}{2}
>>> print(latex(parse_expr("3/2"), fold_short_frac=True)) # No!!
\frac{3}{2}
Как вы можете видеть, он отказывается сложить численную фракцию 3/2, хотя, кажется, все в порядке с символическими выражениями. У кого-нибудь есть объяснение/исправление/обходное решение для этого? Благодаря!
Похоже, ошибка в принтере LaTeX. В частности, он игнорирует эту настройку для рациональных чисел. – asmeurer