Çözüldü __init__ Nedir?

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Çözüm
@Lawrus İlk kod bir sınıfın başlatıcı metodu yqni constructor içeriyor __init__ metodunun amacı bir nesne oluşturulunca otomatik çağırılarak başlangıç durumunu ayarlamak. Bu durumda isim ve balance adlı özelliklere başlangıç değerleri atanmış.
İkinci kod ise bir normal metod, yani yalnızca Name adında bir metod. Bu metod, bir nesnenin isim ve balance özelliklerine değer atamak için kullanılabilir. Ancak, genellikle başlatıcı metod (__init__) nesnenin başlangıç durumunu ayarlamak için kullanılır.
İki kod da çalışabilir, ancak genellikle başlatıcı metod kullanılır çünkü nesnenin başlangıç durumunu belirlemek için daha uygun bir yer sağlar. İkinci metod ise nesne oluşturulduktan sonra isteğe bağlı olarak çağrılabilir. Kendi bildiğim bu kadar yani elimden geldiğince açıklamak istedim.
Herhangi bir metot herhangi bir işi yapmak için oluşturulurken, __init__ metodu öznitelikleri (sınıf değişkenleri, attribute) yaratmak için oluşturulur.
Kod:
def __init__(self,owner,):
        self.isim = owner
        self.balance = 0.0
        
    def Name(self,owner,):
        self.isim = owner
        self.balance = 0.0

Bu 2 kodun farkı nedir ki ikisinde de hata almadım
 
@Lawrus İlk kod bir sınıfın başlatıcı metodu yqni constructor içeriyor __init__ metodunun amacı bir nesne oluşturulunca otomatik çağırılarak başlangıç durumunu ayarlamak. Bu durumda isim ve balance adlı özelliklere başlangıç değerleri atanmış.
İkinci kod ise bir normal metod, yani yalnızca Name adında bir metod. Bu metod, bir nesnenin isim ve balance özelliklerine değer atamak için kullanılabilir. Ancak, genellikle başlatıcı metod (__init__) nesnenin başlangıç durumunu ayarlamak için kullanılır.
İki kod da çalışabilir, ancak genellikle başlatıcı metod kullanılır çünkü nesnenin başlangıç durumunu belirlemek için daha uygun bir yer sağlar. İkinci metod ise nesne oluşturulduktan sonra isteğe bağlı olarak çağrılabilir. Kendi bildiğim bu kadar yani elimden geldiğince açıklamak istedim.
 
Çözüm
@Lawrus İlk kod bir sınıfın başlatıcı metodu yqni constructor içeriyor __init__ metodunun amacı bir nesne oluşturulunca otomatik çağırılarak başlangıç durumunu ayarlamak. Bu durumda isim ve balance adlı özelliklere başlangıç değerleri atanmış.
İkinci kod ise bir normal metod, yani yalnızca Name adında bir metod. Bu metod, bir nesnenin isim ve balance özelliklerine değer atamak için kullanılabilir. Ancak, genellikle başlatıcı metod (__init__) nesnenin başlangıç durumunu ayarlamak için kullanılır.
İki kod da çalışabilir, ancak genellikle başlatıcı metod kullanılır çünkü nesnenin başlangıç durumunu belirlemek için daha uygun bir yer sağlar. İkinci metod ise nesne oluşturulduktan sonra isteğe bağlı olarak çağrılabilir. Kendi bildiğim bu kadar yani elimden geldiğince açıklamak istedim.
@Lawrus __init bloğu sınıf oluştuğunda çağırılır. Name'i de kendin çağırman gerekir.
Çok teşekkür ederim🙌
 
Kod:
def __init__(self,owner,):
        self.isim = owner
        self.balance = 0.0
       
    def Name(self,owner,):
        self.isim = owner
        self.balance = 0.0

Bu 2 kodun farkı nedir ki ikisinde de hata almadım
"__ __" şeklinde olan fonksiyonlar Python da otomatik olarak başlatılan fonksiyonlardır. Yani name fonksiyonu başlayıp tanımlamayı yapamazken, her obje için init fonksiyonu otomatik olarak çağrılır ve tanımlamayı yapar.
 

Technopat Haberler

Geri
Yukarı