Modül İmport Etme ve Sınıfı Çalıştırma (Python-İsthiza-Yazbel)

Merhaba Nesne Tabanlı Programlama Devam (2) bölümündeyim. Bölümde gösterilen şekilde import ettiğimde :

import çalışan
ahmet = çalışan.Çalışan(‘Ahmet’)

çalışan bulunmuyor diyor ve burada çalışan bana hatalı geldiği için siliyorum.

import çalışan
ahmet = Çalışan(‘Ahmet’)

ve bu sefer Çalışan yani py dosyamızın içindeki sınıfı bulamıyor.

Biraz araştırdıktan sonra bunu çözdüm, çözümü daha doğrusu çalışan hali şu şekilde ;

from çalışan import Çalışan
ahmet = Çalışan(‘Ahmet’)

Şimdi burada benim problemime gelecek olursak ben bunu şu anlık aştım fakat Nesneye Tabanlı Programlama serisine devam ederken seriye bağlı kalmak için durmadan bu tarz düzenlemeler yapmam gerekecek ve vakit kaybedeceğim. O yüzden https://python-istihza.yazbel.com/ ’ da verilen bilgilerde mi sıkıntı var yoksa bende mi? Eğer problem bendeyse bu durumu nasıl çözerim?

ilgili bölümün linkini veriyorum, konu ise ilk paragraflarda işleniyor zaten ;

Merhaba. Kodlarınızı düzgün gözükmesi için bu linke göre atmanız lazım.


çalışan modülünü import edebilmek için import işlemini gerçekleştirdiğiniz dosya ile çalışan.py dosyası aynı klasörde olmalı. Eğer etkileşimli kabuktan import işlemini yapmaya çalışıyorsanız zaten yapamazsınız.

Bulamıyor değil, aramıyor. çalışan.py dosyasının içine durup dururken bakması için bir sebep yok. Siz sadece çalışan.py modülünü içe aktardınız, çalışan.py dosyası Çalışan sınıfına sahip olabilir ama sizin kendi dosyanızda Çalışan diye bir sınıf yok.


Yöntemlerden biri de bu olmakla birlikte ilk başta dediklerimi uygularsanız bu da çalışır:

import çalışan
ahmet = çalışan.Çalışan(‘Ahmet’)

Vakit kaybedeceğinizi sanmıyorum, bu dosyalar daha önce yüzlerce belki binlerce kişi tarafından okundu, bir sürü hata düzeltildi. Hala hatalar var olabilir ama oldukça nadirdir. İnternette bulabileceğiniz hangi Türkçe belge veya video İstihza belgeleri gibi açık kaynaklı ve kolayca değişim, ekleme yapılabiliyor?


Son olarak, modüller kısmını okumuş ve anlamış birinin bilgileri unutmadığı sürece bu anlattığınız gibi bir problem ile karşılaşacağını düşünmüyorum.