Nasıl düzeltilir: 'np' hata adı tanımlı değil
Python kullanırken karşılaşabileceğiniz en yaygın hatalardan biri:
NameError : name 'np' is not defined
Bu hata, NumPy python kütüphanesini içe aktardığınızda, ancak içe aktarırken onu np olarak adlandırmadığınızda ortaya çıkar.
Aşağıdaki örneklerde bu sorunun nasıl oluştuğu ve nasıl çözüleceği gösterilmektedir.
Örnek 1: numpy’yi içe aktar
Diyelim ki aşağıdaki kodu kullanarak NumPy kütüphanesini içe aktardınız:
import numpy
Daha sonra sayısal bir değer dizisi tanımlamaya çalışırsanız aşağıdaki hatayı alırsınız:
#define numpy array
x = np. random . normal (loc=0, scale=1, size=20)
#attempt to print values in array
print (x)
Traceback (most recent call last):
----> 1 x = np.random.normal(loc=0, scale=1, size=20)
2 print(s)
NameError : name 'np' is not defined
Bu hatayı düzeltmek için NumPy’yi içe aktarırken np takma adını girmelisiniz:
import numpy as np #define numpy array x = np. random . normal (loc=0, scale=1, size=20) #print values in array print (x) [-0.93937656 -0.49448118 -0.16772964 0.44939978 -0.80577905 0.48042484 0.30175551 -0.15672656 -0.26931062 0.38226115 1.4472055 -0.13668984 -0.74752684 1.6729974 2.25824518 0.77424489 0.67853607 1.46739364 0.14647622 0.87787596]
Örnek 2: numpy içe aktarımından *
Aşağıdaki kodu kullanarak NumPy kitaplığından tüm işlevleri içe aktardığınızı varsayalım:
from numpy import *
Daha sonra sayısal bir değer dizisi tanımlamaya çalışırsanız aşağıdaki hatayı alırsınız:
#define numpy array
x = np. random . normal (loc=0, scale=1, size=20)
#attempt to print values in array
print (x)
Traceback (most recent call last):
----> 1 x = np.random.normal(loc=0, scale=1, size=20)
2 print(s)
NameError : name 'np' is not defined
Bu hatayı düzeltmek için NumPy’yi içe aktarırken np takma adını girmelisiniz:
import numpy as np #define numpy array x = np. random . normal (loc=0, scale=1, size=20) #print values in array print (x) [-0.93937656 -0.49448118 -0.16772964 0.44939978 -0.80577905 0.48042484 0.30175551 -0.15672656 -0.26931062 0.38226115 1.4472055 -0.13668984 -0.74752684 1.6729974 2.25824518 0.77424489 0.67853607 1.46739364 0.14647622 0.87787596]
Alternatif olarak, np söz dizimini hiç kullanmamayı da seçebilirsiniz:
import numpy #define numpy array x = numpy. random . normal (loc=0, scale=1, size=20) #print values in array print (x) [-0.93937656 -0.49448118 -0.16772964 0.44939978 -0.80577905 0.48042484 0.30175551 -0.15672656 -0.26931062 0.38226115 1.4472055 -0.13668984 -0.74752684 1.6729974 2.25824518 0.77424489 0.67853607 1.46739364 0.14647622 0.87787596]
Not: “numpy’yi np olarak içe aktar” sözdizimi yaygın olarak kullanılır çünkü NumPy işlevlerini kullanmanın daha kısa bir yolunu sağlar. Her seferinde “numpy” yazmak yerine, daha hızlı ve okunması daha kolay olan “np” yazmanız yeterlidir.
Ek kaynaklar
Nasıl düzeltilir: NameError ‘pd’ tanımlı değil
Nasıl düzeltilir? Pandalar adında modül yok