N'ime nkuzi a, anyị ga-amụta maka klaasị, ndị na-ewu ụlọ na ihe nketa na Python.
Echiche ndị a dị ezigbo mkpa na nnukwu mmemme ebe a chọrọ ka a kọwapụta ụdị dị iche iche.
klaasị
Klas dị mkpa na mmemme ma ha akọwapụtaghị na Python. Ọtụtụ ndị ọzọ asụsụ mmemme kwadoro echiche nke klaasị. Anyị na-eji klaasị kọwaa ụdị data ọhụrụ.
Ruo ugbu a, anyị amụtala banyere ụdị data ndị bụ isi na Python dị ka ọnụọgụgụ, eriri, na booleans. Ndị a bụ isi ma ọ bụ ụdị data dị mfe na Python. Anyị ahụwokwa ụdị data dị mgbagwoju anya dị ka ndepụta na akwụkwọ ọkọwa okwu.
Ọ bụ ezie na ụdị ndị a bara uru nke ukwuu, a pụghị iji ha mee ihe mgbe niile iji gosipụta echiche dị mgbagwoju anya. Dịka ọmụmaatụ, chee echiche banyere echiche nke isi ihe, ma ọ bụ ụgbọ ahịa ịzụ ahịa. Ụgbọ ala ịzụ ahịa abụghị boolean ma ọ bụ ndepụta. Ọ bụ ụdị data dị iche. Ya mere, anyị nwere ike iji klaasị kọwaa ụdị ọhụrụ iji ṅomie ezigbo echiche.
Ugbu a, ka anyị kọwapụta ụdị data ọhụrụ akpọrọ point. Ụdị ọhụrụ a ga-enwe usoro dịka anyị nyochara na mbụ.
Nke a bụ otu ị ga-esi mee ya:
Anyị na-amalite site n'ịkọwa otu klas site na iji okwu "klas" ma ozugbo nke ahụ gasịrị, anyị na-enye klas anyị aha.
class Point
Ugbu a, lee anya mgbakọ n'ịkpọ aha m ji mee ebe a. Emeela m akwụkwọ ozi nke mbụ ebe a, nke a bụ ihe anyị na-akpọ mgbakọ aha pascal. Mgbakọ a dị iche na nke anyị na-eji maka ịkpọ aha mgbanwe na ọrụ anyị nke anyị na-eji obere mkpụrụedemede na-ekewapụ ọtụtụ okwu site na iji akara ngosi. Mana mgbe anyị na-akpọ klaasị aha, anyị anaghị eji akara ngosi kewapụta ọtụtụ okwu kama, anyị na-ebuli mkpụrụedemede mbụ nke okwu ọ bụla.
Mgbe anyị kọwachara klas anyị, a na-eji eriri afọ nke pụtara na ugbu a akọwapụtala ngọngọ.
class Point:
def move (self):
Na ngọngọ a, anyị nwere ike ịkọwa ọrụ ma ọ bụ ụzọ niile nke isi ihe. Dịka ọmụmaatụ, anyị nwere ike ịkọwa ọrụ a na-akpọ "ịkwagharị" maka ịmegharị isi ihe. Rịba ama na ozugbo anyị pịnyere oghere mepere emepe, PyCharm na-agbakwunye "onwe" na-akpaghị aka ebe a. Nke a bụ isiokwu pụrụ iche ka m laghachi na nke a obere oge. Ka anyị bipụta “gagharịa” n'ọnụ ọnụ.
print("move")
Ka anyị kọwapụta usoro ọzọ dị ka “ise” wee bipụta ya na ọnụ.
def draw(self):
print("draw")
Anyị emechaala nkọwa nke klaasị “point” anyị. Site na ụdị ọhụrụ a, anyị nwere ike ịmepụta ihe ọhụrụ. Otu klas na-akọwa nnọọ ụkpụrụ ụkpụrụ ma ọ bụ ndebiri maka imepụta ihe bụ ihe n'ezie dabere na ụkpụrụ ahụ. Iji mepụta ihe, anyị na-edepụta aha klas anyị wee kpọọ ya dịka ọrụ. Nke a na-emepụta ihe ọhụrụ wee weghachi ya. Mgbe ahụ, anyị nwere ike ịchekwa ihe ahụ na mgbanwe. Ka m gosi gị:
N'ebe a, anyị akọwaala "isi ihe 1" nke bụ isi akụkụ atọ. Ị nwere ike ịhụ nke ahụ, anyị nwere ike ibipụta nhazi n'otu n'otu na ọnụ.
Anyị nwere ike iji ụzọ abụọ ahụ "dọrọ" na "gagharịa" na isi ihe a.
Ya mere, iji weghachite, anyị na-eji klaasị kọwaa ụdị ọhụrụ na ụdị ndị a nwere ike ịnwe ụzọ anyị na-akọwa n'ime ahụ nke klaasị. Klaasị nwere ike inwe àgwà anyị nwere ike ịtọ ebe ọ bụla na mmemme anyị.
Ndị na-ewu ụlọ
Ka ọ dị ugbu a, anyị amụtala otu esi emepụta ụdị ọhụrụ site na iji klas. Ugbu a enwere obere nsogbu na mmejuputa a. Anyị nwere ike ịmepụta ihe ihe na-enweghị nhazi x ma ọ bụ y na-eji klas na nke ahụ adịghị mma. Ka m gosi gị.
Ka anyị mepụta isi ihe wee bipụta ya tupu anyị edobe nhazi x. Ịme mmemme anyị na-ebute mperi njirimara dịka nke a:
Ọ pụtara na ihe ihe ahụ enweghị ihe akpọrọ x. Ugbu a nsogbu bụ na ọ ga-ekwe omume ịnwe ihe ihe na-enweghị nhazi x ma ọ bụ y. Nke a enweghị isi n'ihi na mgbe ọ bụla anyị na-ekwu maka otu isi ihe, anyị kwesịrị ịma ebe isi ihe dị. Iji dozie nsogbu a, anyị na-eji ihe nrụpụta. Onye nrụpụta bụ ọrụ a na-akpọ n'oge imepụta ihe.
Nke a bụ otu anyị si eji ihe nrụpụta. Nke mbụ, ka anyị gafere ụkpụrụ nhazi x na y na mmemme dị n'elu.
point = Point(10, 20)
print(point.x)
Ugbu a, anyị kwesịrị ịgbakwunye usoro pụrụ iche na klas a nke a na-akpọ onye nrụpụta. Okwu ya bụ nke a:
def __init__(self, x, y):
init
dị mkpụmkpụ maka ibido, nke a bụkwa ọrụ ma ọ bụ usoro a na-akpọ mgbe emepụtara ihe ọhụrụ. A na-agbakwunye x na y ozugbo self
ka ịgbakwunye paramita abụọ ọzọ.
Mgbe nke ahụ gasịrị, anyị kwesịrị ịsepụta x na y na ụkpụrụ agafere ya bụ 10 na 20
self.x = x
self.y = y
Anyị na-eji self
iji zoo aka na ihe dị ugbu a wee debe àgwà x na arụmụka x gafere na ọrụ "x". N'ụzọ dị otú a, na-eji init
usoro, anyị nwere ike ịmalite ihe anyị. A na-akpọ usoro a dị ka onye nrụpụta. Ka anyị mee mmemme anyị.
Ugbu a, anyị nwere ike ịgbanwe nhazi x na y ma emechaa. Ka anyị kwalite x nhazi:
point = Point(10, 20)
point.x = 11
print(point.x)
Ugbu a, a na-emelite nhazi x ka ọ bụrụ uru 11.
Mgbatị
Nke a bụ mmega ahụ na-atọ ụtọ maka gị.
Achọrọ m ka ị kọwaa ụdị ọhụrụ a na-akpọ mmadụ. Ihe ndị a "Onye" kwesịrị inwe "name
" àgwà yana "talk()
”Usoro.
Ọ bụ ọrụ dị mfe ma ekwesịghị iwe ihe karịrị nkeji ole na ole.
ngwọta
Malite na ịkọwa klaasị "Onye" dịka nke a:
class Person:
self.name = name
Anyị ga-akọwapụta onye nrụpụta ma emechaa. Ugbu a, anyị nwere ike ịmepụta ihe "Onye". Ka anyị kpọọ ya Jọn
john = Person("John Smith")
print(john.name)
john.talk()
Ugbu a, gaa na akụkụ mbụ nke koodu ahụ wee mepụta onye nrụpụta.
def __init__(self, name):
Koodu ikpeazụ ga-adị ka nke a:
Ịnwekwara ike iji eriri ndị a haziri ahazi na echiche ndị ọzọ na njikọ klaasị na ndị nrụpụta.
nketa
Ihe nketa bụ echiche ọzọ metụtara klaasị na-ahapụ gị iji koodu ọzọ.
Chee echiche banyere koodu a.
class Dog:
def walk(self):
print("walk")
Anyị ekepụtala “Nkịta” klaasị nwere usoro “ije”. N'ime usoro a, anyị na-ebipụta naanị ozi ije na ọdụ. Ka anyị kwuo, na ezigbo mmemme, enwere ahịrị 10 nke koodu kama naanị otu ahịrị ebe a. N'ọdịnihu, ọ bụrụ na achọrọ klas ọzọ iji nweta usoro "ije", anyị ga-emegharị koodu ahụ niile. Nke a adịghị mma.
Na mmemme, anyị nwere ụkpụrụ akpọrọ DRY nke dị mkpụmkpụ maka emeghachila onwe gị. Ka anyị kwuo otu oge n'ọdịnihu, anyị na-achọpụta nsogbu na usoro "ije" anyị ma ọ bụrụ na anyị emeghachila ma ọ bụ megharịa usoro a n'ọtụtụ ebe ndị ọzọ, anyị ga-alaghachi azụ dozie nsogbu ahụ n'otu ebe ọ bụla anyị ṅomiri nke a. koodu. Ya mere, na mmemme, anyị ekwesịghị ịkọwa ihe ugboro abụọ.
Enwere ụzọ dị iche iche iji dozie nsogbu a mana ebe a ka anyị ga-amụta nke dị mfe maka ndị mbido ma a na-akpọ ya ihe nketa. N'okwu a, anyị ga-emepụta klas ọzọ "mammal" ma kọwaa àgwà "ije" anyị na klaasị ahụ.
class Mammal:
def walk(self):
print("walk")
Ka anyị kọwachara klaasị “Mammal” anyị nwere ike iji ihe nketa gafere àgwà ndị a:
Ma klas nkịta na nwamba na-eketa usoro klas niile akọwapụtara na klaasị nne na nna ha. Ugbu a, anyị nwere ike itinye ụzọ kpọmkwem maka nkịta dị ka nke a:
class Dog:
def bark(self):
print("bark")
Kechie!
Nke a bụ maka klaasị, ndị nrụpụta na iji koodu ahụ na klaasị nwere echiche nketa. Ugbu a, anyị na-eru nso na njedebe nke usoro anyị. Site n'oge a, ị ga-enwe ike ịmepụta koodu dị mma, nke a na-agụ na nke dị nkenke na Python.
Anyị ga-ahụ echiche nke modul na ngwugwu na nkuzi na-esote.
Nkume a-aza