gpt4 book ai didi

python - 向对象添加新元素

转载 作者:行者123 更新时间:2023-11-28 22:28:23 25 4
gpt4 key购买 nike

我正在使用一个多项式程序,它接受像这样的项对,其中输入是(系数,指数)

P1 = 多项式((9, 11), (6, 14), (-12, 3), (42, 0))

这是我的构造函数:

def __init__(self, *termpairs):
L = [x for x in termpairs]
L = sorted(L, key=lambda x: x[1], reverse=True)
self.coeffs = L

所以我的问题是如何向已制作的对象添加另一个术语?新术语是这样添加的 P1.addterm(coefficient, exponent) ,这是我到目前为止所拥有的,但它不起作用:

def addterm(self, *newterm):
for i in range(len(self.coeffs)):
if self.coeffs[i][1] == newterm[1]:
#code for when exponent is already in polynomial
break
else:
self.coeffs = Polynomial(self.coeffs), newterm)
break

最佳答案

看起来您的所有项都只是列表 self.coeffs 中的元组元素。在这种情况下....

def addterm(self, newcoeff, newexp):
newterm = (newcoeff, newexp)
self.coeffs.append(newterm)
self.coeffs.sort(key=lambda x: x[1], reverse=True)
# operator.itemgetter is probably better here.
# # self.coeffs.sort(key=operator.itemgetter(1), reverse=True)

关于python - 向对象添加新元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43580210/

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