Ich arbeite derzeit an eine Polynomial - Klasse erstellen, die folgenden beinhaltet Add , mul und eval Methoden. Ich bin zur Zeit fest auf dem Beimengungsabschnitt, wenn mir jemand etwas Hilfe auf geben könnte , wie man aus , dass dachte zu bekommen , dass wäre sehr dankbar. Alles funktioniert zur Zeit ohne Fehler , aber wenn ich tun p3 = p1 + p2 und ich drucke p3 ich zusammen die beiden Listen zurück. Jedes Feedback würde sehr geschätzt werden .
class Polynomial(object):
def __init__(self, *coeffs, num = 0):
self.coeffs = list(coeffs) # turned into a list
assert (type(num) is type(1))
self.num = num
# Needs to be operator overload
'''
def __mul__(self, other):
'''
def __eval__(self, other, coeff, x):
result = coeff[-1]
for i in range(-2, -len(coeff)-1, -1):
result = result * x + coeff[i]
return result
def __add__(self, other):
assert type(other) is Polynomial
num = self.coeffs + other.coeffs
return Polynomial(num)
def __sub__(self, other):
assert type(other) is Polynomial
num = self.coeffs - other.coeffs
return Polynomial(num)
def __represntation__(self):
return Polynomial + str(self.coeffs)
def __str__(self):
rep =
degree = len(self.coeffs) - 1
rep += str(self.coeffs[0]) + x^ + str(degree)
for i in range(1, len(self.coeffs)-1):
coeff = self.coeffs[i]
if coeff < 0:
rep += - + str(-coeff) + x^ + str(degree - i)
else:
rep += + + str(coeff) + x^ + str(degree - i)
if self.coeffs[-1] < 0:
rep += - + str(-self.coeffs[-1])
else:
rep += + + str(self.coeffs[-1])
return rep