I tenei kauhau, ka ako tatou mo nga karaehe, nga kaihanga me nga taonga tuku iho ki te python.
He tino nui enei ariā i roto i te kaupapa nui e hiahiatia ana nga momo rereke hei tautuhi.
Karaehe
He mea nui nga karaehe i roto i nga kaupapa, a, ehara i te mea motuhake mo te python. He maha atu reo whakamaori tautoko i te whakaaro o nga karaehe. Ka whakamahia e matou nga karaehe hei tautuhi i nga momo raraunga hou.
I tenei wa, kua ako matou mo nga momo raraunga taketake i roto i te Python penei i nga nama, aho, me nga booleans. Koinei nga momo raraunga taketake, ngawari ranei i roto i te Python. Kua kite ano matou i etahi momo raraunga uaua penei i nga rarangi me nga papakupu.
Ahakoa he tino whaihua enei momo, kaore e taea te whakamahi ki te whakatauira i nga ariā uaua. Hei tauira, whakaarohia te whakaaro o tetahi tohu, he kaata hokohoko ranei. Ko te kaata hokohoko ehara i te boolean, he rarangi ranei. He momo raraunga rereke. Na ka taea e tatou te whakamahi i nga karaehe ki te tautuhi i nga momo hou hei whakatauira i nga tino kaupapa.
Inaianei, me tautuhi he momo raraunga hou e kiia nei ko te tohu. Ko tenei momo hou ka whai tikanga pera i ta maatau i tirotiro i mua.
Ka penei taau mahi:
Ka timata ma te tautuhi i te karaehe ma te whakamahi i te kupu matua "akomanga" ka mutu ka hoatu he ingoa mo to taatau akomanga.
class Point
Inaianei, tirohia te tikanga whakaingoa kua whakamahia e au ki konei. Kua tuhia e au te reta tuatahi ki konei, koinei te mea e kiia nei ko te tikanga whakaingoa pascal. He rereke tenei huihuinga mai i ta matou e whakamahi ana mo te whakaingoa i o maatau taurangi me o maatau mahi e whakamahia ana e matou nga reta iti me te wehe i nga kupu maha ma te whakamahi i te tohu. Engari ki te whakaingoa i nga karaehe, karekau matou e whakamahi i te tohu tohu hei wehe i nga kupu maha, engari ka whakapaipaihia te reta tuatahi o ia kupu.
I muri i te tautuhi i to maatau karaehe, ka whakamahia he kopirua ko te tikanga inaianei kua tautuhia he poraka.
class Point:
def move (self):
I roto i tenei poraka, ka taea e tatou te tautuhi i nga mahi me nga tikanga katoa e pa ana ki nga tohu. Hei tauira, ka taea e tatou te tautuhi i tetahi mahi e kiia nei ko "neke" mo te neke i tetahi tohu. Kia mahara ka patohia e matou te reu tuwhera, ka taapiri aunoa a PyCharm "whaiaro" ki konei. He kupu matua motuhake tenei, ka hoki mai ano ahau ki tenei korero. Me ta "neke" ki runga i te tauranga.
print("move")
Me tautuhi i tetahi atu tikanga penei i te "tuhi" ka taia ki te tauranga.
def draw(self):
print("draw")
Kua oti taatau ki te whakamaramatanga o ta maatau akomanga "tohu". Ma tenei momo hou, ka taea e tatou te hanga taonga hou. Ka tautuhia noa e te karaehe te mahere, te tauira ranei mo te hanga taonga ko nga tauira tuuturu i runga i taua mahere. Hei waihanga ahanoa, patohia te ingoa o to tatou karaehe katahi ka kiia he mahi. Ka hangaia he ahanoa hou ka whakahokia mai. Na ka taea e tatou te penapena i taua mea ki tetahi taurangi. Maku e whakaatu ki a koe:
I konei kua tautuhia e matou he "tohu1" he tohu ahu-toru. Ka taea e koe te kite, ka taea e taatau te tuhi i nga taunga takitahi ki te tauranga.
Ka taea e tatou te whakamahi i nga tikanga e rua "tuhi" me te "neke" me tenei waahi.
No reira ki te whakahoki korero, ka whakamahia e matou nga karaehe ki te tautuhi i nga momo hou ka taea e enei momo nga tikanga ka tautuhia e matou i roto i te tinana o te akomanga. Ka taea e nga karaehe nga huanga ka taea e tatou te whakanoho ki nga waahi katoa o a maatau kaupapa.
Ngā Kaihanga
I tenei wa, kua ako matou ki te hanga momo hou ma te whakamahi i nga karaehe. Inaianei he iti noa te raru o tenei whakatinanatanga. Ka taea e tatou te hanga i tetahi ahanoa ira me te kore he x, y ruruku ranei ma te whakamahi i nga karaehe, kaore i te pai. Maku e whakaatu ki a koe.
Ka hangaia he tohu ka taia i mua i te whakatakoto i te taunga x. Ko te whakahaere i ta maatau papatono ka puta he hapa huanga penei:
Ko te tikanga karekau he huanga o te ahanoa tohu ko x. Inaianei ko te raru ka taea te whai i tetahi mea ira kaore he taunga x, y ranei. Karekau he tikanga i te mea ka korero tatou mo tetahi take, me mohio tatou kei hea taua waahi. Hei whakaoti i tenei raruraru, ka whakamahia e matou he kaihanga. Ko te kaihanga he mahi ka karangahia i te wa e hanga ana he ahanoa.
Anei me pehea te whakamahi i te kaihanga. Tuatahi, me tuku nga uara taunga x me y i te kaupapa o runga ake nei.
point = Point(10, 20)
print(point.x)
Inaianei, me taapiri he tikanga motuhake ki tenei karaehe e kiia nei he kaihanga. He penei tana wetereo:
def __init__(self, x, y):
init
he poto mo te arawhiti, koinei te mahi, te tikanga ranei ka karangahia ina hangahia he ahanoa tohu hou. Ka tāpirihia te x me te y i muri tonu mai self
ki te taapiri i etahi taapiri e rua.
Whai muri i tera, me mapihia te x me te y ki nga uara kua paahitia aera 10 me te 20
self.x = x
self.y = y
Whakamahia ana e matou self
ki te titiro ki te ahanoa o naianei katahi ka tautuhia te huanga x ki te tohenga x i tukuna ki te mahi "x". I tenei ara, te whakamahi init
tikanga, ka taea e tatou te arawhiti i a tatou taonga. Ko tenei tikanga ka kiia he kaihanga. Kia whakahaere ta tatou kaupapa.
Inaianei, ka taea e tatou te huri i nga taunga x me y i muri mai. Kia whakahōuhia te x ruruku:
point = Point(10, 20)
point.x = 11
print(point.x)
Inaianei kua whakahoutia te taunga x ki te uara 11.
Mahinga
Anei he mahi whakamere ki a koe.
Ko taku hiahia kia tautuhia e koe he momo hou e kiia nei he tangata. Ko enei mea "Tangata" me whai "name
"huanga me te"talk()
”Tikanga.
He mahi ngawari, kaua e neke ake i te rua meneti.
otinga
Me timata ma te tautuhi i te akomanga "Tangata" penei:
class Person:
self.name = name
Ka tautuhia e matou te kaihanga i muri mai. Na, ka taea e tatou te hanga i te ahanoa "Tangata". Kia huaina e tatou ko Hoani
john = Person("John Smith")
print(john.name)
john.talk()
Na, haere ki te waahanga tuatahi o te waehere ka hangaia he kaihanga.
def __init__(self, name):
Ka penei te ahua o te waehere whakamutunga:
Ka taea hoki e koe te whakamahi i nga aho kua whakahōputuhia me etahi atu ariā i te taha o nga karaehe me nga kaihanga.
tupu
Ko te tuku iho tetahi atu ariā e hono ana ki nga karaehe ka taea e koe te whakamahi ano i tetahi waehere.
Whakaarohia tenei waahanga waehere.
class Dog:
def walk(self):
print("walk")
Kua hangaia e matou he karaehe "Kui" me te tikanga "haere". I tenei tikanga, kei te ta noa tatou i te karere hikoi ki runga i te tauranga. Me kii tatou, i roto i te hotaka tuturu, 10 nga rarangi waehere hei utu mo te rarangi kotahi noa i konei. I te wa kei te heke mai, ki te hiahia tetahi atu karaehe ki te whai i te tikanga "haere", me whakahoki ano e tatou taua waehere katoa. Ehara tenei i te mea pai.
I roto i te kaupapa, he maataapono ta matou e kiia nei ko DRY he poto mo te kaua e mahi ano. Me kii tatou i etahi wa kei te heke mai, ka kite tatou i tetahi raru o ta tatou tikanga "haere" a ki te mea kua tukuruatia e matou tenei tikanga ki etahi atu waahi maha, me hoki mai ano ki te whakatika i taua raru ki nga waahi katoa kua kapea e matou tenei. waehere. Na ko te take i roto i te kaupapa kia kaua e tautuhi i tetahi mea kia rua.
He rereke nga huarahi hei whakatika i tenei raru engari i konei ka ako tatou i te mea ngawari ake mo te hunga katahi ka kiia ko te taonga tuku iho. I roto i tenei take, ka hangahia e matou tetahi atu karaehe "mammal" me te tautuhi i to maatau huanga "haere" i roto i taua akomanga.
class Mammal:
def walk(self):
print("walk")
I muri i te tautuhi i to maatau akomanga "Mammal" ka taea e taatau te whakamahi tuku iho hei tuku i nga huanga penei:
Ko nga karaehe kuri me te ngeru kei te tuku iho nga tikanga karaehe katoa i tautuhia i roto i te akomanga matua. Inaianei, ka taea e taatau te taapiri tikanga mo nga kuri penei:
class Dog:
def bark(self):
print("bark")
Takahia!
Ko tenei katoa mo nga karaehe, nga kaihanga me te whakamahi ano i te waehere i roto i nga karaehe me nga ariā tuku iho. Inaianei kua tata ki te mutunga o ta maatau raupapa. I tenei wa, me kaha koe ki te whakaputa i nga waehere pai, panui me te poto i roto i te Python.
Ka kite tatou i te kaupapa o nga waahanga me nga kohinga i te kauhau e whai ake nei.
Waiho i te Reply