Imisebenzi
Kuze kube manje, besibhala yonke ikhodi yethu ku-app.py, kodwa njengoba izinhlelo zethu zikhula, sidinga indlela engcono yokuhlela ikhodi yethu. Sidinga ukuhlukanisa ikhodi yethu ibe yizingxenyana ezincane, ezilawulekayo, nezilondolozekayo esizibiza ngokuthi imisebenzi. Umsebenzi uyisitsha semigqa embalwa yekhodi eyenza umsebenzi othile.
Isibonelo, usuvele ufunde mayelana nemisebenzi embalwa eyakhelwe ngaphakathi kuPython print()
futhi input()
. Umsebenzi ngamunye unenjongo futhi uyazi ukwenza umsebenzi othile. Ngakho-ke, lapho sakha izinhlelo ezinkulu eziyinkimbinkimbi, kufanele sihlukanise ikhodi yethu ibe izingxenye ezincane ezisebenziseka kabusha, okungukuthi imisebenzi.
Masiqonde lo mqondo ngokwakha uhlelo lokuphrinta umlayezo wokubingelela.
print('Hi there!')
print('Welcome aboard!')
Lapha sinohlelo olulula olunemigqa emibili kuphela yekhodi. Manje, ake sithi, sizozidinga kwezinye izinhlelo ukuze sizibeke emsebenzini esingaphinda siwusebenzise.
Ake ngethule igama elingukhiye eligodliwe def
kuPython, okufushane ukuchaza futhi isetshenziselwa ukuchaza umsebenzi.
def greet_user():
print('Hi there!')
print('Welcome aboard!')
Manje leli bhulokhi lekhodi lizochaza umsebenzi "greet_user
” ngemigqa yamakhodi ngemva kwalokho. Noma nini lapho lo msebenzi ubizwa, le migqa emibili izokwenziwa. Masisebenzise lokhu:
print('start')
greet_user()
print('finish')
Uhlelo lwenziwa ngokulandelana, okusho ukuthi kuzodingeka ukuthi uchaze umsebenzi ngaphambi kokuwubiza ohlelweni.
Amapharamitha
Imisebenzi echaziwe isebenza kancane ngokuhlukile kunemisebenzi eyakhelwe ngaphakathi yePython. Ngokwesibonelo, endabeni ye print()
umsebenzi, kuthatha ulwazi oluthile esifuna ukuluphrinta, kodwa umsebenzi wethu wokubingelela awuthathi noma yiluphi ulwazi. Bekungeke yini kube kuhle uma ungadlulisela igama lomsebenzisi lapha bese, esikhundleni sokuthi “sawubona lapho”, ungaphrinta igama lomsebenzisi?
Ungakwenza lokhu ngokwengeza amapharamitha ngaphakathi kwabakaki bomsebenzi ochaziwe. Ake ngikubonise:
def greet_user(name):
print('Hi there!')
print('Welcome aboard!')
Manje "name
” ngaphakathi kwabakaki kuzosebenza njengokuguquguquka kwendawo futhi singakwazi ukudlulisa igama lomsebenzisi uma sikubiza.
greet_user('Shahbaz')
Manje ipharamitha yegama isethwe ukuze “Shahbaz
”. Ake siguqule uhlelo ukuze silusebenzise.
def greet_user(name):
print(f'Hi {name}')
print('Welcome aboard!')
print('start')
greet_user('Shahbaz')
print('finish')
Okubalulekile okumele sikuqaphele ukuthi “igama” emugqeni wokuqala libizwa ngokuthi Ipharamitha kanti igama elinikeziwe okungukuthi i-Shahbaz libizwa ngokuthi i-agumenti.
Asiqhubeke siqhube lolu hlelo.
Ngakho ngale mingcele, singathola ulwazi emisebenzini yethu.
Manje, masenze okuthile okuthakazelisayo. Ake sithi ufuna ukwengeza elinye igama kumlayezo wokubingelela. Kulula.
def greet_user(name):
print(f'Hi {name}')
print('Welcome aboard!')
print('start')
greet_user('Shahbaz')
greet_user('Aayush')
print('finish')
Manje qaphela ukuthi uma umsebenzi unepharamitha, sinesibopho sokudlulisa inani laleyo pharamitha. Uma ususa igama kumsebenzi bese uqalisa uhlelo, sizothola iphutha. Ungasebenzisa futhi amapharamitha amaningi kumsebenzi owodwa, ohlukaniswe ngekhoma.
Ngokwesibonelo, greet_user(first_name, last_name):
. Izimpikiswano nazo zizofomethwa ngokufanayo.
Izingxabano zamagama angukhiye
Kuze kube manje, sifunde ukuthi noma nini lapho sichaza amapharamitha emisebenzi yethu kufanele sinikeze amanani uma kungenjalo sizothola iphutha. Kuhlelo lokugcina, izimpikiswano 'Shahbaz'
futhi 'Bhatti'
abizwa ngokuthi ama-positional arguments, okusho isikhundla noma izindaba zokuhleleka kwazo ohlelweni.
E-Python, sinolunye uhlobo lwengxabano olubizwa ngokuthi ama-agumenti egama elingukhiye, lapho isikhundla singenandaba khona. Ake ngikubonise ukuthi zisebenza kanjani.
Bheka uhlelo lokugcina. Singayilungisa kanje:
def greet_user(first_name, last_name):
print(f'Hi {first_name} {last_name}')
print('Welcome aboard!')
print('start')
greet_user(first_name='Shahbaz', last_name='Bhatti')
print('finish')
Manje i first_name
futhi last_name
zingamapharamitha wegama elingukhiye. Ungashintsha izindawo zabo futhi umphumela uzofana.
Manje lokho akusho ukuthi kufanele ngaso sonke isikhathi sisebenzise izimpikiswano zamagama angukhiye. Isikhathi esiningi sisebenzisa ama-positional agumenti, kodwa ezimweni ezithile, lezi zimpikiswano zamagama angukhiye zisisiza sithuthukise ukufundeka kwekhodi yethu.
Kukhona enye into okudingeka uyazi mayelana nezimpikiswano zamagama angukhiye. Izimpikiswano zamagama angukhiye kufanele njalo zize ngemva kwezimpikiswano zendawo.
Buyisa Isitatimende
Kuze kube manje sesifunde ukuthi singayidala kanjani imisebenzi futhi siyithumele ulwazi sisebenzisa amapharamitha ayo. Manje ake sifunde indlela yokwenza imisebenzi ebuyisela amanani. Lokhu kuwusizo ikakhulukazi uma wenza uhlobo oluthile lwezibalo futhi ufuna ukubuyisela umphumela kunoma ubani osebenzisa umsebenzi wakho. Ake ngikubonise.
Ake sichaze umsebenzi ozobala isikwele senombolo.
def square(number):
return number*number
Sisebenzise isitatimende sokubuyisela ukubuyisela le nombolo ngaphandle komsebenzi. Manje, uma sibiza lo msebenzi, ubuyisela inani elifana ne- input()
umsebenzi. Masiyiphrinte kutheminali.
Ungaphikisana ngokuthi umphumela ofanayo ungatholakala ngaphandle kokusebenzisa isitatimende sokubuyisela. Ake sikuhlole.
Sibona izinto ezimbili, inombolo 9, futhi akukho. Kwenzekani lapha?
Lapho umhumushi we-Python enza le khodi, okokuqala uzobiza umsebenzi wesikwele futhi isilawuli sithuthela emsebenzini. Lapha sibala isikwele sale nombolo enikeziwe bese siyiphrinta kutheminali.
Manje, ngokuzenzakalelayo, yonke imisebenzi ayibuyiseli inani. Ngakho-ke uma singenaso isitatimende sokubuyisela lapha, ngokuzenzakalelayo iPython ayibuyisi nesisodwa. Ayikho into emele ukungabikho kwevelu. Kufana nokungenalutho noma okungenalutho ku-C, C++, Java ne-Javascript.
Qedani!
Ngethemba ukuthi ukuqondisisile ukubaluleka kwemisebenzi.
Ziyingxenye ebalulekile yokufunda kwePython uma uhlela ukubhala izinhlelo ezinkulu neziyinkimbinkimbi ngesikhathi somsebenzi wakho wokubhala amakhodi.
shiya impendulo