Что такое self
Self – специальный параметр, который передается первым аргументом в метод класса и представляет собой ссылку на экземпляр класса
class Shirt:
def __init__(self, color):
self.color = color
s = Shirt('yellow')
s.color
#=> 'yellow'
Oct. 9, 2023, Источник
`self` представляет экземпляр объекта текущего класса. Позволяет обращаться к атрибутам и методам данного экземпляра внутри класса. Это ключевой аспект объектно-ориентированного программирования, позволяющий методам взаимодействовать с данными объекта, к которому они принадлежат.
Почему `self` необходим
- Доступ к атрибутам и методам экземпляра: Используется внутри методов класса для доступа или модификации атрибутов и вызова других методов экземпляра. Позволяет каждому экземпляру класса иметь собственные данные и поведение.
- Определение методов экземпляра: Здесь первый параметр обычно называется `self`. Это соглашение, а не строгое правило, но его следует соблюдать для согласованности и читаемости кода.
Вот пример `self`:
class MyClass:
def __init__(self, value):
# Использование self для установки атрибута экземпляра
self.my_attribute = value
def show_value(self):
# Использование self для доступа к атрибуту экземпляра
print(self.my_attribute)
def update_value(self, new_value):
# Использование self для изменения атрибута экземпляра
self.my_attribute = new_value
Когда метод класса вызывается для экземпляра класса, Python автоматически передает сам экземпляр в метод в качестве первого аргумента. Это значит, что когда вы создаете экземпляр `my_object = MyClass(10)` и вызываете `my_object.show_value()`, `my_object` передается в метод `show_value` как аргумент `self`.
Feb. 22, 2024, easyoffer