tystudy 发表于 2023-12-6 21:08:05

如何用python中class(类)来进行一元多项式的求导

如何用python中class(类)来进行一元多项式的求导

FishC_GPT 发表于 2023-12-6 21:08:43

首先,我们可以创建一个表示多项式的类。在这个类中,每个实例都有一个属性`coefficients`,它是一个列表,包含了多项式中每个项的系数。我们还可以添加方法来计算多项式的求导。

下面是一个示例代码:

class Polynomial:
    def __init__(self, coefficients):
      self.coefficients = coefficients
      
    def __repr__(self):
      terms = []
      for i, coeff in enumerate(self.coefficients[::-1]):
            if coeff != 0:
                term = f"{coeff}x^{len(self.coefficients)-i-1}"
                terms.append(term)
      return " + ".join(terms)
   
    def derivative(self):
      der_coeffs = []
      for i, coeff in enumerate(self.coefficients[:-1]):
            der_coeff = coeff * (len(self.coefficients)-i-1)
            der_coeffs.append(der_coeff)
      return Polynomial(der_coeffs)

# 测试
p = Polynomial()
print(p)# 输出:2x^2 - 3x + 1
print(p.derivative())# 输出:4x - 3

在上述代码中,`Polynomial`类有一个构造方法`__init__`,它接受一个系数列表作为参数,并将其存储在`coefficients`属性中。`__repr__`方法用于打印多项式对象时的输出形式。`derivative`方法用于计算多项式的一阶导数,并返回一个新的`Polynomial`对象。

通过上面的示例代码,我们可以得到多项式2x^2 - 3x + 1以及其一阶导数4x - 3的输出。

以上回复来自 -- ChatGPT(FishC官方接口),如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: 如何用python中class(类)来进行一元多项式的求导