Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
抛出零除法错误Python_Python - Fatal编程技术网

抛出零除法错误Python

抛出零除法错误Python,python,Python,我试图在Python中抛出一个错误,但我一直得到一个语法错误 def dx(f, x): return abs(0-f(x)) def newtons_method(f, df, x0, e): try: delta = dx(f, x0) while delta > e: x0 = x0 - f(x0)/df(x0) delta = dx(f, x0) print('Root

我试图在Python中抛出一个错误,但我一直得到一个语法错误

def dx(f, x):
    return abs(0-f(x))

def newtons_method(f, df, x0, e):
    try:
        delta = dx(f, x0)
        while delta > e:
            x0 = x0 - f(x0)/df(x0)
            delta = dx(f, x0)
        print('Root is at:', x0)
        print('f(x) at root is: ', f(x0

    except (ZeroDivisionError) as err:
        print(err)

def f(x):
    return x**2 - 1
    # return 6*x**5 -5*x**4 -4*x**3 +3*x**2

def df(x):
    return 2*x
    # return 30*x**4 -20*x**3 -12*x**2 +6*x

x0s = [-1, -0.5, 0, 0.5, 1]

for x0 in x0s:
    newtons_method(f, df, x0, 1e-5)
当我在控制台中运行它时,会打印以下内容:

(tensorflow) Dans-MacBook-Pro:research danhessler$ python newton.py 
  File "newton.py", line 17
    except (ZeroDivisionError) as err:
     ^
SyntaxError: invalid syntax

我试图提出错误,但也没有成功。

问题不在于它上面的那条线。 我有:

并将其更改为:

print('f(x) at root is: ', f(x0))

这就解决了问题

请看上面错误所在的行。提示:计算括号数…请使用ide,如sublime text。语法错误会更容易发现哦,天哪,谢谢你。这样愚蠢的错误。
print('f(x) at root is: ', f(x0))