用户:
蒟蒻OIer1048576查看:2 回复:7 评论:2 创建时间:2020-06-26T16:22:09
class Polynomials:
def __init__(self, string: str):
self.particles = string.replace("-", "+-").split("+")
def get_value(self, **names):
particles = []
for i in self.particles:
i = i.replace('^', '**')
for j in i:
if j.isalpha():
break
else:
j = "-------------------------------------------绝对不会包含在多项式里的东西----------------------------------"
k = i.find(j)
if k != -1:
i = i[0:k] + "*" + i[k:]
tmp = []
tmp2 = [j for j in i if j.isalpha()]
for j in tmp2:
if j not in tmp:
tmp.append(j)
del tmp2
for j in tmp:
i.replace(j, f"names[\"{j}\"]")
particles.append(i)
else:
particles.append(i)
return sum([eval(i) for i in particles])
if __name__ == "__main__":
print(Polynomials("2x^2+5x+9").get_value(x=2))