📜  Python| sympy.as_coefficient() 方法(1)

📅  最后修改于: 2023-12-03 15:19:16.853000             🧑  作者: Mango

Python | sympy.as_coefficient() 方法

sympy.as_coefficient() 方法是 SymPy 模块中一个用于获取可以转化为某个对象的系数的方法。如果给定的表达式可以表示为一个有理数、浮点数或特定变量的系数与另一些表达式的乘积的形式,那么此方法会将系数返回。

语法
sympy.as_coefficient(term, rational=False)
参数
  • term: 表示待处理表达式的变量或表达式。
  • rational: 如果为 True,将只允许分数作为转换后的系数。
返回值
  • 如果 term 可以表示为一个有理数、浮点数或特定变量的系数与另一些表达式的乘积的形式,那么此方法会将系数返回。
  • 如果 term 表示的表达式中没有任何符号,则此方法将返回原始表达式。
示例
from sympy import *

x, y = symbols('x y')
expr1 = 3*x + 2*y
expr2 = Rational(3, 2)*x + Rational(2, 3)*y
expr3 = sqrt(2)*x + pi*y

print(expr1.as_coefficient(x))   # 返回 3
print(expr1.as_coefficient(y))   # 返回 2
print(expr2.as_coefficient(Rational(2, 3)))   # 返回 2/3
print(expr3.as_coefficient(sqrt(2)))   # 返回 sqrt(2)
print(expr3.as_coefficient(pi))   # 返回 pi
print(expr3.as_coefficient(x))   # 返回 None
print(x.as_coefficient(x))   # 返回 (1, 0)

上述程序中,首先导入了 Sympy 模块并定义了两个符号变量 xy。接着,定义 expr1expr2expr3 三个表达式,其中 as_coefficient() 方法会被用来获取它们中的系数。

最后,在第 7~8 行代码中,我们分别使用 as_coefficient() 方法获取了 expr1xy 的系数。

输出结果如下:

3
2
2/3
sqrt(2)
pi
None
(1, 0)
参考链接