22

Python の累乗および対数モジュールの組み込み関数を使用しようとすると、次のようなエラーが発生します。

NameError: name 'sqrt' is not defined

math.sqrt(4)sqrt(4)およびを使用してみsqrt(4.0)ましたが、どれも機能しません。例外はpow、想定どおりに機能する です。これは本当に奇妙で、何が悪いのかわかりません。

4

7 に答える 7

55

pow言語に組み込まれています(数学ライブラリの一部ではありません)。問題は、数学をインポートしていないことです。

これを試して:

import math
math.sqrt(4)
于 2012-01-09T02:19:50.263 に答える
18

としてインポートすることもできます。

from math import *

これで、 math を前に付けなくても、任意の数学関数を使用できます。例えば

sqrt(4)
于 2014-03-04T11:41:41.837 に答える
5

追加:

import math

最初に。そして、次を使用します。

math.sqrt(num)  # or any other function you deem neccessary
于 2012-01-10T14:15:19.647 に答える
2

math.sqrt使うときは言うべきです。または、実行しますfrom math import sqrt

うーん、あなたの質問をもっとよく読みました....どのようにインポートしていmathますか? 私はちょうど試してみましたがimport mathmath.sqrtそれは完全に機能しました。のようなことをしていますimport math as mか?その場合は、関数の前にm(または の後に使用した名前as) を付ける必要があります。

powには 2 つのバージョンがあるため、 が機能してい__builtin__ますmath

于 2012-01-09T02:19:24.933 に答える
0
import math as m
a=int(input("Enter the no"))
print(m.sqrt(a))

from math import sqrt
print(sqrt(25))

from math import sqrt as s
print(s(25))

from math import *
print(sqrt(25))

すべての作品。

于 2019-04-23T10:59:12.730 に答える