it-swarm.com.de

Python-Mathematikmodul

Immer wenn ich versuche, die eingebauten Funktionen des Exponentiation- und Logarithm-Moduls von Python zu verwenden, erhalte ich eine Fehlermeldung wie diese 

NameError: name 'sqrt' is not defined

Ich habe es mit math.sqrt(4), sqrt(4) und sqrt(4.0) ausprobiert, aber keiner von ihnen funktioniert. Die Ausnahme ist pow, die wie erwartet funktioniert. Das ist wirklich seltsam und ich bin nicht sicher, was falsch ist.

19
user1126849

pow ist in die Sprache integriert (nicht Bestandteil der Mathematikbibliothek). Das Problem ist, dass Sie keine Mathematik importiert haben. 

Versuche dies:

import math
math.sqrt(4)
49
dave

Sie können auch als importieren

from math import *

Dann können Sie jede mathematische Funktion verwenden, ohne vor der Mathematik zu stehen. z.B.

sqrt(4)
13
Softec

hinzufügen:

import math

am Anfang. und dann verwenden Sie:

math.sqrt(num)  # or any other function you seem neccessary
4
Arnab Ghosal

Sie müssen math.sqrt sagen, wenn Sie es verwenden. Oder from math import sqrt.

Hmm, ich habe gerade deine Frage etwas genauer gelesen ... Wie importierst du math? Ich habe gerade import math und dann math.sqrt ausprobiert, was perfekt funktioniert hat. Machst du etwas wie import math as m? Wenn ja, müssen Sie der Funktion m (oder den Namen, den Sie nach as verwendet haben) voranstellen.

pow funktioniert, weil es zwei Versionen gibt: eine stets verfügbare Version in __builtin__ und eine andere Version in math.

2
Ethan Furman
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))
1
Kalyan Pendyala

mathe importieren als m a = int (Eingabe ("Enter the no")) print (m.sqrt (a))

aus Mathe importieren sqrt print (sqrt (25))

aus Mathe importieren sqrt als s drucken (s (25))

aus Mathe importieren * drucken (sqrt (25))

Alles funktioniert.

0
Rishabh Sharma

Im

von math import sqrt

Die Verwendung von sqrt (4) funktioniert einwandfrei. Sie müssen math.sqrt (4) nur verwenden, wenn Sie "import math" verwenden.

0
Abhishek