Junior — Middle
Python'da sınıf yöntemleri için dekoratör nedir açıklayabilir misiniz?
sobes.tech yapay zeka
AI'dan gelen yanıt
Python'da sınıf yöntemleri için dekoratör, sınıf yöntemini alan ve bu yöntemin değiştirilmiş bir versiyonunu döndüren bir fonksiyondur. Bu, orijinal kodu değiştirmeden yönteme ek davranışlar eklemeye olanak tanır.
Örneğin, bir dekoratör kullanılarak yöntem çağrılarını kaydetmek, erişim izinlerini kontrol etmek veya sonuçları önbelleğe almak mümkündür.
Basit bir sınıf yöntemi dekoratörü örneği:
class MyClass:
def decorator(func):
def wrapper(self, *args, **kwargs):
print(f"{func.__name__} yöntemi çağrıldı")
return func(self, *args, **kwargs)
return wrapper
@decorator
def method(self, x):
return x * 2
obj = MyClass()
print(obj.method(5)) # Mesaj ve 10 sonucu gösterir
Burada, @decorator method yöntemini sarar ve çağrı sırasında ek bir çıktı ekler.