Дәріс тезистері № апта Дәріс тақырыбы және тезистер Сағат көлемі №1 дәріс Қарастырылатын сұрақтар



бет17/20
Дата30.03.2023
өлшемі164,2 Kb.
#77735
1   ...   12   13   14   15   16   17   18   19   20
Байланысты:
Дәріс тезистері

call әдісі


_call – класс данасын шақырған кезде іске қосылады. Мысалға қарайық:
class A: def call (self, z): return z * z
a = A()
print(a(8)) Нәтижесі: 64

str әдісі


Келесі арнайы әдіс – бұл str әдісі. Оны класс данасын жол түрінде жазу қажет болғанда қолданамыз.
class A:
def str (self): return "z*6"
a = A()
print(a)
Нәтижесі:

z*6


Super әдісі


Python тілінде әдетте объектілерге қолданылатын super() әдісі бар. Оның негізгі міндеті – мұрагер класта ата-ана класының әдістерін пайдалану мүмкіндігі.
Келесі мысал толық емес, сондықтан орындалмайды, дегенмен де оны көрсете кету керек:
class A:
def init (self):
print(u'A класының конструкторы') # A класының мұрагері
class B(A):
def init (self):
print(u'B класының конструкторы') super(B, self). init ()
a = B()
Нәтижесі:
В класының конструкторы ReferenceError: $$super is not defined

Статикалық әдістер


Класс данасын құрмай-ақ класс ішінде қолжетімді болатын әдісті құруға болады. Ол үшін класс ішінде әдісті анықтамастан бұрын @staticmethod декораторын көрсету керек.
class A:
@staticmethod
def mymethod(a, b):
return a + b print(A.mymethod(12, 13))
Нәтижесі:
25
Құжатқа қолжетімді болу үшін doc арнайы әдісі қарастырылған. Python интерпре- таторы кластың немесе функцияның бастапқы кодын өңдеген кезде құжаттау жолдарын табады да, оларды берілген объектінің doc атрибутының мәні етеді. Мысал жұмыс істемейді, бірақ сонда да үлгісін көрсетейік:
class A:
"'Бұл класты құжаттау жолдары.
Ол үш рет біреулік тырнақшаға алынған'" def test(self):
""" Бұл test әдісін құжаттау""" pass
print(A. doc ) print(A.test. doc )

AttributeError: 'А' class has no attribute ' doc '






Достарыңызбен бөлісу:
1   ...   12   13   14   15   16   17   18   19   20




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет