3

私は、pydevをプログラミングして使用してPythonをEclipseで実行するのは初めてです。EclipseEEとPython2.7.3を使用しています。実行しようとしているコードは次のとおりです。

def evaluate_poly(poly, x):

        sumPoly = 0

        for i in range(0,len(poly)):
            #calculate each term and add to sum.
            sumPoly = sumPoly+(poly[i]*x**i)
        return sumPoly




def compute_deriv(poly):

    derivTerm = ()

    #create a new tuple by adding a new term each iteration, assign to derivTerm each time.
    for i in range(0,len(poly)):
    #i is the exponent, poly[i] is the coefficient,
    #coefficient of the derivative is the product of the two.
        derivTerm = derivTerm + (poly[i]*i,)
    return derivTerm



def compute_root(poly, x_0, epsilon):

    #define root to make code simpler.
    root = evaluate_poly(poly,x_0)
    iterations = 0

    #until root (evaluate_poly) is within our error range of 0...
    while (root > epsilon) or (root < -epsilon):
    #...apply newton's method, calculate new root, and count iterations.
        x_0 = (x_0 - ((root)/(evaluate_poly(compute_deriv(poly),x_0))))
        root = evaluate_poly(poly,x_0)
        iterations = iterations + 1
    return (x_0,iterations)

print compute_root((4.0,3.0,2.0),0.1,0.0001)

この日食を実行しようとするたびに、アリを作成するように求められます。[OK]をクリックしても何も起こりません。これは、関数内で関数を実行した場合にのみ発生します。非常に基本的なコードは問題ではないようです。何が問題になっていますか?これを修正するにはどうすればよいですか?

4

1 に答える 1

0

関数しかない場合、python は何もしません。理由もなく、任意の関数を実行するだけではありません。何かを印刷したい場合は、関数の 1 つを呼び出す必要があります。最良の方法は、これをコードの最後に追加することです。

if __name__ == '__main__':
    evaluate_poly([1, 2, 3], 4)
于 2012-10-26T21:27:08.440 に答える