Sobes.tech
Middle

Sınıf A'nın her bir metodunu nasıl çağırırsınız?

sobes.tech yapay zeka

AI'dan gelen yanıt

Diyelim ki, A adında bir sınıfımız var ve metodlar:

import time

class A:
    def what_time(self):
        return f'{time.time()}'

    @property
    def useless_getter(self):
        return self.text

    def __private_or_public(self):
        return 1

    def __str__(self):
        return self.text

    def __init__(self, text):
        self.text = text

Her yöntemi çağırmak için:

  • what_time — normal metod, örnek üzerinden çağrılır:

    a = A('merhaba')
    print(a.what_time())
    
  • useless_getter — özellik, paranteksiz olarak bir öznitelik gibi çağrılır:

    print(a.useless_getter)
    
  • __private_or_public — çift alt çizgili metod, isim değişir (name mangling), çağırmak için:

    print(a._A__private_or_public())
    
  • __str__ — özel metod, otomatik olarak string'e dönüştürmede çağrılır:

    print(str(a))
    

Bu nedenle, çift alt çizgili özel bir metodu çağırmak için, sınıf adıyla birlikte kullanmak gerekir: _A__private_or_public().