gpt4 book ai didi

python - 为什么这个多项式函数会抛出 SyntaxError?

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:10:07 25 4
gpt4 key购买 nike

我正在尝试编写一个基本算法来使用 Python 评估四阶多项式。代码在下面,我不确定我做错了什么。我想出了这段代码,但我不确定它是否足以解决这个问题:

x = int(raw_input(":"))
def eval_poly(x):
if abs(x) > 0:
return 35x**4-17x**3+5x**2+41x-29
print eval_poly(x)

我得到的错误表明 35x**4 是无效语法,我尝试计算的多项式如下:

35x^4 - 17x^3 + 5x^2 + 41x -29 

最佳答案

尽管我们在数学中将 (35 x) 隐含地表示为 (35 * x),但 Python 解释器无法解决这个问题。您需要明确地告诉它 35 * (x ** 4)

所以你修改函数来包含

return 35 * (x ** 4) - 17 * (x ** 3) + 5 * (x ** 2) + 41 * x - 29

(括号并不是绝对必要的,因为没有它们 Python 将获得正确的操作顺序,但我认为它们有助于提高可读性。)


值得一提的是:当 Python 尝试计算表达式 35x 时会抛出错误,但它不知道如何解释它。它以数字开头,因此不是变量 ( variables have to start with a non-digit character ),但包含字母字符,因此不是数字。不仅仅是它不知道这个表达式是什么意思,而是 35x 是 Python 无法解析的。

关于python - 为什么这个多项式函数会抛出 SyntaxError?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28186406/

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