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

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir