__init__ metode Python izmanto, lai inicializētu klases objektus. To sauc arī par konstruktoru.
Lai pilnībā izprastu __init__ metodes jēdzienu, jums jāzina:
Priekšnosacījumi - Python klase un objekti , Pats
Kas ir __init__ Python?
__init__ metode ir kā noklusējuma konstruktors C++ un Java . Konstruktori tiek izmantoti, lai inicializētu objekta stāvokli.
Konstruktoru uzdevums ir inicializēt (piešķirt vērtības) klases datu dalībniekiem, kad tiek izveidots klases objekts.
Tāpat kā metodes, konstruktors satur arī paziņojumu (t.i., instrukciju) kolekciju, kas tiek izpildīta objekta izveides laikā. Tas tiek palaists, tiklīdz tiek izveidots klases objekts.
Metode ir noderīga, lai veiktu jebkuru inicializāciju, ko vēlaties veikt ar savu objektu.
Python3
kādi mēneši ir Q1
# A Sample class with init method> class> Person:> ># init method or constructor> >def> __init__(>self>, name):> >self>.name>=> name> ># Sample Method> >def> say_hi(>self>):> >print>(>'Hello, my name is'>,>self>.name)> p>=> Person(>'Nikhil'>)> p.say_hi()> |
>
>
Izvade:
Hello, my name is Nikhil>
Koda izpratne
Iepriekš minētajā piemērā tiek izveidota persona vārdā Nikhils. Veidojot personu, Nikhils tiek nodots kā arguments, šis arguments tiks nodots __init__ metodei, lai inicializētu objektu.
Atslēgvārds self apzīmē klases gadījumu un saista atribūtus ar dotajiem argumentiem. Līdzīgi daudzus Person klases objektus var izveidot, nododot dažādus nosaukumus kā argumentus.
dubultā java
Zemāk ir piemērs __ init__ Python ar parametriem
__init__ metodes piemērs programmā Python
Apskatīsim dažus Python metodes __init__ piemērus.
Python3
# A Sample class with init method> class> Person:> ># init method or constructor> >def> __init__(>self>, name):> >self>.name>=> name> ># Sample Method> >def> say_hi(>self>):> >print>(>'Hello, my name is'>,>self>.name)> # Creating different objects> p1>=> Person(>'Nikhil'>)> p2>=> Person(>'Abhinav'>)> p3>=> Person(>'Anshul'>)> p1.say_hi()> p2.say_hi()> p3.say_hi()> |
>
>
Izvade:
Hello, my name is Nikhil Hello, my name is Abhinav Hello, my name is Anshul>
__init__ metode ar mantošanu
Mantojums ir vienas klases spēja atvasināt vai mantot īpašības no citas klases. Apskatīsim tālāk sniegto piemēru, lai redzētu, kā __init__ darbojas mantojumā.
Python3
java virknes pievienošana
# Python program to> # demonstrate init with> # inheritance> class> A(>object>):> >def> __init__(>self>, something):> >print>(>'A init called'>)> >self>.something>=> something> class> B(A):> >def> __init__(>self>, something):> ># Calling init of parent class> >A.__init__(>self>, something)> >print>(>'B init called'>)> >self>.something>=> something> obj>=> B(>'Something'>)> |
>
>
Izvade:
A init called B init called>
Tātad pirmais tiek izsaukts vecāku klases konstruktors. Bet Python nav obligāti, ka vecāku klases konstruktors vienmēr tiks izsaukts pirmais.
Var mainīt secību, kādā tiek izsaukta __init__ metode vecākam vai pakārtotajai klasei. To var vienkārši izdarīt, izsaucot vecākklases konstruktoru pēc bērnklases konstruktora pamatteksta.
Piemērs:
Python3
# Python program to> # demonstrate init with> # inheritance> class> A(>object>):> >def> __init__(>self>, something):> >print>(>'A init called'>)> >self>.something>=> something> class> B(A):> >def> __init__(>self>, something):> >print>(>'B init called'>)> >self>.something>=> something> ># Calling init of parent class> >A.__init__(>self>, something)> obj>=> B(>'Something'>)> |
c struktūra struktūrā
>
>
Izvade:
B init called A init called>
Lasīt : Mantojums Python valodā
Mēs esam apskatījuši __init__ programmā Python, apsprieduši, kā izmantot __init__, kā arī redzējuši dažus piemērus __init__ metodes izmantošanai Python.
Konstruktors ir būtisks jēdziens OOP, un __init__ metode ir ļoti līdzīga konstruktoriem.
Cerams, ka šis raksts jums palīdzēja apgūt __init__ metodi, un jūs varēsiet to izmantot savos projektos.
Saistīts raksts
- Vai __init__() ir privāta metode Python?
- Kāda ir atšķirība starp __init__ un __call__?
- __jauns__ Python