Junior — Middle
102
Podes explicar o que é uma propriedade em Python e como pode ser usada?
Resposta da IA
sobes.tech IA
В Python property — это встроенный декоратор, который позволяет управлять доступом к атрибутам класса, превращая методы в свойства. Это удобно для инкапсуляции: можно определить геттер, сеттер и делитер для атрибута, при этом использовать синтаксис обращения как к обычному полю.
Пример использования:
class Person:
def __init__(self, name):
self._name = name # приватный атрибут
@property
def name(self):
return self._name
@name.setter
def name(self, value):
if not value:
raise ValueError("Name cannot be empty")
self._name = value
p = Person("Alice")
print(p.name) # вызовет геттер
p.name = "Bob" # вызовет сеттер
Таким образом, property позволяет контролировать чтение и запись атрибутов, добавлять валидацию или вычислять значения на лету, сохраняя удобный и понятный интерфейс.