Пример кода для инкапсуляции в Python:
class MyClass:
def __init__(self):
self.public_variable = 10
self._protected_variable = 20
self.__private_variable = 30
def public_method(self):
pass
def _protected_method(self):
pass
def __private_method(self):
pass
my_object = MyClass()
print(my_object.public_variable) # доступно извне класса
print(my_object._protected_variable) # доступно внутри класса и подклассов
print(my_object.__private_variable) # недоступно извне класса
my_object.public_method() # вызов публичного метода
my_object._protected_method() # вызов защищенного метода
my_object.__private_method() # вызов приватного метода
При использовании инкапсуляции в Python, переменные и методы, которые начинаются с одного символа подчеркивания (_), считаются защищенными и не предназначены для использования вне класса или его подклассов. Переменные и методы, которые начинаются с двух символов подчеркивания (__), являются приватными и не доступны за пределами класса. Однако, в Python нет строгой приватности, и приватные переменные и методы могут быть доступны с использованием соответствующей манипуляции с именами.
