0
# quadratic.py
# A program that computes the real roots fo a quadratic equation.
# Illustrates the use of the math library
# Note: This program crashes if the equation has no real roots

import math # math makes the library available

def main():
    print "This program finds the real solutions to a quadratic"
    print

    a, b, c = input("Please enter the coefficients (a, b, c): ")
    discRoot = math.sqrt(b * b - 4 * a * c)
    root1 = (-b +discRoot) / (2 * a)
    root2 = (-b +discRoot) / (2 * a)

    print
    print "The solutions are: ", root1 , root2 

main()

彼女は私が得ているエラーです:

Macintosh-7:python andrewmetersky$ python quadratic.py
宿題の質問への答え: i+x+j =
トレースバック (最新の呼び出しが最後)

はライブラリの利用可能な
ファイル "/Users/andrewmetersky/Desktop/Programming/Python/math.py"、5 行目、
NameError: name 'jp' is not defined

問題は、math.py がその場所にあるファイルでさえないことです。ありましたが、Pythonが数学モジュールではなくそれを取得しようとしていると考えたため、削除しました。その場所にmath.pycというファイルがあります...それはモジュールですか?なぜそれを取得しないのですか。

ありがとう

PS-また、貼り付けたばかりのセクションを、各行にスペースを4回押すことなく、スタックオーバーフローのあるコードとして表示するにはどうすればよいですか。

4

4 に答える 4

5

.pyc ファイルも削除する必要があります。これは元の .py ファイルのコンパイル済みバージョンであり、パスにある場合、python はそれを使用します。ソース (.py) ファイルが存在し、新しい場合にのみ更新 (再コンパイル) されます。

import初めてローカル ファイルにアクセスすると、Python はそのファイルをバイトコードに変換し、ラベルを付けます.pyc

于 2012-07-26T03:41:34.993 に答える
2

/User/andrewmetersky/Desktop/Programming/Python" に "math.py" というファイルがあり、Python 独自の数学モジュールの前に見つかりました。ファイルの名前を変更し、一致する .pyc ファイルを削除すると、すべてが再び機能するはずです。

于 2012-07-26T03:41:11.977 に答える
0

math は標準の Python ライブラリであるため、コードはそのまま動作するはずです。

実行を確認するには:

$python

>>import math

あなたが得るものを参照してください。

ローカル ディレクトリで独自の定義を使用して数学ライブラリをマスキングしているようです。

math.py または math.pyc のようなローカルのものをすべて削除して、もう一度やり直してください。

走る

于 2012-07-26T03:45:23.473 に答える
0

python import "/Users/andrewmetersky/Desktop/Programming/Python/math.py" 名前を変更するか、quadratic.py を別のディレクトリに移動します。

于 2012-07-26T04:04:22.630 に答える