NameError: name not...
 
Bildirimler
Hepsini Temizle

NameError: name not defined Hatası  

  RSS
Mehmet Sait YILMAZ
(@mehmetsaityilmaz)
Üye

Merhaba, ilk post bana nasipmiş 

aşağıdaki kod bloğunu çalıştırdığımda not defined hatası alıyorum nasıl çözebilirim.

Aldığım hata

#######################

Traceback (most recent call last):
  File "main.py", line 15, in <module>
    T,Y = rk4m(t0,y0,h,n)
NameError: name 'rk4m' is not defined

 

#######################

Kod bloğu

 

from numpy import *
from pylab import *
def f(x,y):
    f = zeros((4))
    f[0] = y[2]
    f[1] = y[3]
    f[2] = -0.01*sqrt(y[2]*2+y[3]*2)*y[2]
    f[3] = -10.-0.01*sqrt(y[2]*2+y[3]*2)*y[3]
    return f
 
h=0.01
n=180
t0 = 0.0
y0 = array([0.0,0.0,6.0,8.])
T,Y = rk4m(t0,y0,h,n)
x=[y1 for y1,y2,y3,y4 in Y]
y=[z2 for z1,z2,z3,z4 in Y]
y_tam(y0[2]/y0[3]-5*(x/y0[2]**2))*x
for i in range (n):
print ("%10.3f"% x[i], "%12.3f"% y[i], "%12.3f"% y_tam[i])
scatter(x,y)
scatter(x,y_tam)
xlim(0.0,10.)
ylim(-3.0,4.0)
show()

 

Bu konu 2 hafta önce Mehmet Sait YILMAZ tarafından düzenlendi
Alıntı
Gönderildi : 15/05/2020 12:33
Egehan Gündoğdu
(@egehangundogdu)
Üye

Merhabalar. Muhtemelen rk4m fonksiyonu kullandığınız kütüphaneler içinden kaldırılmış ya da geçerli olan workspace'de tanımlı değil. Versiyon loglarını okumanızı tavsiye ederim.

Konudan bağımsız fakat from module import * yanlış bir kullanım. İçeriye aktardığınız kütüphanede kullanmanız gerekmeyen bir çok sınıf,veya fonksiyon olabilir. Global isim alanındaki karmaşıklıktan ötürü ileride refactor zorlaşacaktır.

Örnek kullanımlar

import numpy as np
np.array()
from module import sub_module
sub_module.my_func()
from django.test import TestCase,Client

 

 

CevapAlıntı
Gönderildi : 17/05/2020 04:42
Erdem SELÇUK
(@eravse)
Saygın Üye Forum Yöneticisi
Gönderen: @mehmetsaityilmaz

Merhaba, ilk post bana nasipmiş 

aşağıdaki kod bloğunu çalıştırdığımda not defined hatası alıyorum nasıl çözebilirim.

Aldığım hata

#######################

Traceback (most recent call last):
  File "main.py", line 15, in <module>
    T,Y = rk4m(t0,y0,h,n)
NameError: name 'rk4m' is not defined

 

#######################

Kod bloğu

 

from numpy import *
from pylab import *
def f(x,y):
    f = zeros((4))
    f[0] = y[2]
    f[1] = y[3]
    f[2] = -0.01*sqrt(y[2]*2+y[3]*2)*y[2]
    f[3] = -10.-0.01*sqrt(y[2]*2+y[3]*2)*y[3]
    return f
 
h=0.01
n=180
t0 = 0.0
y0 = array([0.0,0.0,6.0,8.])
T,Y = rk4m(t0,y0,h,n)
x=[y1 for y1,y2,y3,y4 in Y]
y=[z2 for z1,z2,z3,z4 in Y]
y_tam(y0[2]/y0[3]-5*(x/y0[2]**2))*x
for i in range (n):
print ("%10.3f"% x[i], "%12.3f"% y[i], "%12.3f"% y_tam[i])
scatter(x,y)
scatter(x,y_tam)
xlim(0.0,10.)
ylim(-3.0,4.0)
show()

 

@egehangundogdu nun cevabına ek olarak rk4m bır array donmesı lazım ıkı array bırlesık onu donemıyorusun bırde y_tam fonksyıonun yok ılerısınde sorun lar cıkıyor ben bır yere kadar getırdım ama amacı bılemedıgım ıcın mock durumda

 

 

image
CevapAlıntı
Gönderildi : 30/05/2020 02:38
Paylaş: