Junior — Middle
Loyihalaringizda ob'ektlarning xususiyatlarini tavsiflash va sozlash usulidan setterlar orqali foydalanib ko'rdingizmi?
sobes.tech AI
AIdan javob
Ha, Python'da obyektlarning atributlariga kirishni nazorat qilish uchun ko'pincha setterlar (va getterlar) bilan xususiyatlar ishlatiladi. Bu qiymat berishda qo'shimcha mantiqni bajarishga imkon beradi, masalan, validatsiya yoki bog'liq ma'lumotlarni yangilash.
Setter bilan xususiyatdan foydalanish misoli:
class Person:
def __init__(self, age):
self._age = age
@property
def age(self):
return self._age
@age.setter
def age(self, value):
if value < 0:
raise ValueError("Yosh manfiy bo'lishi mumkin emas")
self._age = value
p = Person(25)
p.age = 30 # to'g'ri
# p.age = -5 # xato chiqaradi
Bu yondashuv mantiqni inkapsulyatsiya qilishga va ob'ektning ichki ma'lumotlarini himoya qilishga yordam beradi.