Sobes.tech
Junior — Middle
94

Бағдарламалау тілдерінде білетін сиқырлы әдістер туралы айта аласыз ба?

Сұралған компаниялар
LC-Group
ООО Цитадель
СБЕР РоботыСБЕР Роботы
Атом Безопасность
АО К-Технологии

AI-дан жауап

sobes.tech AI

Python-да сиқырлы әдістер — бұл атаудың басында және соңында екі сызықша бар арнайы әдістер (мысалы, __init__, __str__). Олар объектілердің мінез-құлқын қайта анықтауға және тілдің синтаксисімен интеграциялауға мүмкіндік береді.

Кейбір жиі қолданылатын сиқырлы әдістер:

  • __init__(self, ...) — объектінің құрылғысы.
  • __str__(self) — объектінің жолдық көрінісі (str() функциясы мен print үшін).
  • __repr__(self) — объектінің ресми жолдық көрінісі, оны қателерді түзету үшін пайдаланады.
  • __len__(self) — объектінің ұзындығын қайтарады (len() функциясы үшін).
  • __getitem__(self, key) — индекс немесе кілт бойынша элементтерге қол жеткізу.
  • __setitem__(self, key, value) — индекс немесе кілт бойынша мән орнату.
  • __iter__(self) — объект үшін итераторды қайтарады.
  • __call__(self, ...) — объектіні функция сияқты шақыруға мүмкіндік береді.
  • __eq__(self, other) — теңдік салыстыру.

__str__ және __repr__ қолданудың мысалы:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def __str__(self):
        return f"{self.name}, {self.age} жаста"

    def __repr__(self):
        return f"Person(name={self.name!r}, age={self.age})"

p = Person("Иван", 30)
print(str(p))  # Иван, 30 жаста
print(repr(p)) # Person(name='Иван', age=30)

Сиқырлы әдістер Python-да кодты әрі қарай «питонизмді» және қолдануға ыңғайлы етеді.