gpt4 book ai didi

sympy - 如何在不计算的情况下从多项式中提取分子和分母?

转载 作者:行者123 更新时间:2023-12-04 15:19:41 24 4
gpt4 key购买 nike

我有以下表达式

A=Symbol('A')
x=Symbol('x')
B=Symbol('B')
C=Symbol('C')
D=Symbol('D')
expression=((A**x-B-C)/(D-1))*(D-1)
n,d=fraction(expression)

我得到以下结果:
n=A**x-B-C
d=1

我的预期结果是
n=(A**x-B-C)*(D-1)
d=(D-1)

有没有办法在 sympy 或需要编写自定义函数来处理

最佳答案

使用 UnevaluatedExpr()以防止表达式被评估。

from sympy import symbols, fraction, UnevaluatedExpr

A,x,B,C,D = symbols('A x B C D')

expression = (A**x-B-C)/(D-1)*UnevaluatedExpr(D-1)
n,d = fraction(expression)
print(n)
print(d)

这返回
(A**x - B - C)*(D - 1)
D - 1

见同情 Advanced Expression Manipulation文档页面了解更多详情。

关于sympy - 如何在不计算的情况下从多项式中提取分子和分母?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39130964/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com