Modül İçe Aktarmada Sorun (IndentationError)

Merhaba istihza belgelerinde modüller konusuna çalışırken kendi oluşturduğumuz bir .py dosyasının modül olarak içe aktarılması hususunda deneme yapıyordum. Daha önceden OOP konusuna çalışırken yapmış olduğum oop_mini_proje.py adlı dosyamı modül olarak içe aktarmaya çalıştım. oop_mini_proje.py dosyamın içerdiği kodlar aşağıdadır;

class Sekil(object):
    pi = 3.14
    
    def __init__(self,uzunluk,kenar_sayisi):
        self.uzunluk = uzunluk
        self.kenar_sayisi = kenar_sayisi
        #self.alan=0
        
    def cevre_hesapla(self):
        print("Çevre Hesaplanıyor:")
        
    def alan_hesapla(self):
        print("Alan Hesaplanıyor")
        
            
class Kare(Sekil):
    def cevre_hesapla(self):
        super().cevre_hesapla()
        self.cevre = self.uzunluk*self.kenar_sayisi
        print("Karenin Çevresi: ",self.cevre)
            
    def alan_hesapla(self):
        super().alan_hesapla()
        self.alan = self.uzunluk**2
        print("Karenin Alanı: ",self.alan)
        
class Daire(Sekil):
    def cevre_hesapla(self):
        super().cevre_hesapla()
        self.cevre = 2 * Daire.pi * self.uzunluk
        print("Dairenin Çevresi: ",self.cevre)
        
    def alan_hesapla(self):
        super().alan_hesapla()
        self.alan = Daire.pi * pow(self.uzunluk,2)
        print("Dairenin Alanı: ",self.alan)

Aynı dizinde bulunan Modül Tanımlama.py isimli dosyamın içerisinde
import oop_mini_proje yazıp çalıştırdığımda aşağıdaki hatayı alıyorum.

import oop_mini_proje
Traceback (most recent call last):

  File "C:\Users\KIRAT\Anaconda3\lib\site-packages\IPython\core\interactiveshell.py", line 3296, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)

  File "<ipython-input-29-9672b8996871>", line 1, in <module>
    import oop_mini_proje

  File "C:\Python\Temel\oop_mini_proje.py", line 41
    """
        ^
IndentationError: unindent does not match any outer indentation level

Tanımladığım sıradan fonksiyonları içeren .py dosyalarını modül olarak eklediğimde bu hata ile karşılaşmıyorum.

Sınıf yapısı içeren kod dosyaları modül olarak aktarılamıyor mu? (Soru saçmaysa kusura bakmayın)
Yaşadığım bu sorun hakkında çözüm önerilerinizi bekliyorum, teşekkürler…

Yazdığınız kodlarda girinti hatası yok. oop_mini_proje dosyası içe aktarılabiliyor. Acaba import oop_mini_proje'yi yazarken yanlışlıkla bir girinti fazladan mı koydunuz?

1 Beğeni

Dikkatsizliğimden dolayı bayağı vaktim gitti. 41. satırda “”" ile başlayan açıklama satırım bir girinti içeriden başlamış, bu nedenden dolayı hata veriyormuş. Yorum satırları olduğu için hatanın onlarla alakası yoktur diye düşünüp yukarıda kodlarımın içeriğini paylaşırken 41. satırdan sonrasını koymamıştım. Hata yapmışım meğer, bundan sonra tamamını koyarım :blush:

   """
...Açıklama ifadeleri...
"""

Burayı aşağıdaki gibi düzenleyince oldu.

"""
....Açıklama ifadeleri...
"""
1 Beğeni