首页 > 解决方案 > .series() 的问题和从 mpmath 的转换

问题描述

我遇到了以下看似奇怪的行为(这是一个显示基本问题的测试用例)。

from sympy import *
dz = symbols('dz')
f = 1/(dz - (1.0+I))
f1.series(dz,0,1)

这会产生类似“TypeError:gmpy.mpq() 需要数字或字符串参数”的错误

另一方面,如果我将 1.0 更改为 1:

from sympy import *
dz = symbols('dz')
f = 1/(dz - (1+I))
f1.series(dz,0,1)

它给出了正确的答案。有人可以解释我为什么吗?

标签: seriesmpmathgmpy

解决方案


您必须使用相同的名称。在第 3 行中,您使用 f 作为名称,在第 4 行中,您使用 f1。当我尝试它们时,这两个版本都给出了相同的结果。


推荐阅读