Alternatif bir kurucu eklemek
Sınıf metodları, bir nesneyi sınıftan oluşturmanın alternatif bir yolunu sunar; örneğin bir dosyadan ya da farklı bilgiler kabul edilerek ve kurulum sırasında gereken öznitelikleri döndürmek için bir işlem yapılarak.
Bu egzersizde Person sınıfıyla çalışacaksın. Kurucu, başlatma sırasında bir ad ve yaş bekler. Sen, ad ve doğum yılı verilerek başlatmaya izin veren bir sınıf metodu ekleyeceksin; bu metod, doğum yılından yaşı hesaplayacak.
Bu egzersiz
Python'da Nesne Yönelimli Programlamaya Giriş
kursunun bir parçasıdırEgzersiz talimatları
- Bir sınıf metodu dekoratörü ekle.
- Sınıfa özel argüman olarak kullanılan geleneksel kelimeyi,
namevebirth_year'ı kabul edenfrom_birth_year()sınıf metodunu tanımla. - Metodun içinde,
CURRENT_YEARsınıf özniteliği ilebirth_yeararasındaki farkı hesaplayarakagedeğişkenini oluştur. - Sınıfın
nameveageözniteliklerini döndür.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
class Person:
CURRENT_YEAR = 2024
def __init__(self, name, age):
self.name = name
self.age = age
# Add a class method decorator
____
# Define the from_birth_year method
def ____(____, ____, ____):
# Create age
age = ____.____ - ____
# Return the name and age
return ____(____, ____)
bob = Person.from_birth_year("Bob", 1990)