Pythonのべき乗および対数モジュールの組み込み関数を使用しようとすると、次のようなエラーが表示されます。
_NameError: name 'sqrt' is not defined
_
math.sqrt(4)
、sqrt(4)
およびsqrt(4.0)
を使用してみましたが、いずれも機能しません。例外はpow
です。これは想定どおりに機能します。これは本当に奇妙で、何が悪いのか分かりません。
pow
は言語に組み込まれています(数学ライブラリの一部ではありません)。問題は、数学をインポートしていないことです。
これを試して:
import math
math.sqrt(4)
としてインポートすることもできます
from math import *
その後、数学の接頭辞なしで任意の数学関数を使用できます。例えば.
sqrt(4)
追加:
import math
最初に。次に使用します:
math.sqrt(num) # or any other function you seem neccessary
使用するときにmath.sqrt
と言う必要があります。または、from math import sqrt
を実行します。
うーん、私はあなたの質問をもっと徹底的に読んだだけです... math
をインポートする方法import math
を試した後、math.sqrt
を試してみましたが、完璧に機能しました。 import math as m
のようなことをしていますか?その場合、関数の前にm
(またはas
の後に使用した名前)を付ける必要があります。
pow
は、__builtin__
に常に利用可能なバージョンとmath
に別のバージョンがあるため、機能しています。
import math #imports math module
import math as m
print(m.sqrt(25))
from math import sqrt #imports a method from math module
print(sqrt(25))
from math import sqrt as s
print(s(25))
from math import *
print(sqrt(25))
数学をm a = int(input( "Enter the no"))としてインポートprint(m.sqrt(a))
数学インポートからsqrt print(sqrt(25))
math import sqrt as s print(s(25))から
数学インポートから* print(sqrt(25))
すべての作品。
に
数学インポートsqrtから
Sqrt(4)の使用は完全にうまく機能します。 「数学のインポート」を使用するときのみ、math.sqrt(4)を使用する必要があります。