KombiyuutaradaBarnaamijyada

Python luqadda barnaamijyada; oo siddooyinkuna

The luqadda barnaamijyada lagu tukan (sida "Python" ama "Python") Waxaa jira dhowr siyaabood oo loop tallaabo qaar ka mid ah. The qalabka ugu weyn ee hirgelinta siyaalaha kasta oo lagu tukan - halka siddo iyo. loop halka waa ka universal ka badan, sidaas awgeed waa gaabis ah. Si kastaba ha ahaatee, tani micnaheedu ma aha in waxaa ka wanaagsan yahay! for loop waxaa loo isticmaalaa marar badan, maxaa yeelay, waxaa la ogaaday in hawlaha ugu adag abuurka ah ee heer multi-iyo barnaamijyada mnogouslovnyh.

Python: wareegga la postcondition

Wareegyada la postcondition - waxaa siddo halka, kuwaas oo ah qaababka ugu universal urureed ee deegaanka barnaamijyada. loop halka ka shaqeeya on mabda'a ah "ilaa iyo inta". Taas macnaheedu waxa soo socda: halka xaalad gaar ah ku soo laaban doona qiimaha run ah, waxa ay ka shaqeyn doonaan! design Tani waxaa lagu magacaabaa "wareeg" sababtoo ah maamulka functional of soconayan soo noqnoqda, laga bilaabo qiimaha bilowga ah. Out in wareegga halka Python la fulin waqti marka qiimaha noqdo been ah. Halkaa marka ay marayso, turjumaanka gudbiya barnaamijka si ay qeybta soo socda functional-semantic, ie line cusub, oo ku yaalla ka dib markii block la halka postcondition ah.

In luqadaha barnaamijyada, wareegyada Python halka postcondition leeyihiin Saan soo socda:

1. Iyadoo (xaalad):

2. qowlka

Expression noqon karaa qoraal ah oo hal ama dhowr ah. Xaalada had iyo jeer waa muhiimadda run kasta oo aan eber. design Tani waxay ka shaqeeya ilaa iyo inta xaaladda ku qeexan waa run.

Isticmaalka wareegga halka ee "Python" tusaale ahaan

Rassmotirim halka loop. Python waa dhismeedka arrin xiiso leh iterations ay:

a = 0
halka a <7:
ku qor ( "A")
a = a + 1

Waxaan ku dhawaaqay variable ah "a" iyo iyada codsaday in ay eber. Markaas dhigay shuruudaha "halka a <7", taas oo ah, halka variable ah "a" ka yar tahay tirada "7", ka dibna noo loop waa la dili doonaa ilaa iyo inta ay jirto been ah.

A been ah (in uu yahay, ka baxdo wareegga doono) waxa ay noqon doontaa markii variable noqon ka badan tahay tirada "7" doonaa. Si taasi ay u dhici, waa mar kasta oo incremented by 1, in aanu ayaa tilmaamaya in ay "a = a + 1".

Haddii aad dhismaha this, xarafka "A" la soo bandhigi doonaa 7 jeer column ah!

A
A
A
A
A
A
A

loop dhammaadka lahayn halka Python

Sida loo sameeyo loop aan dhammaadka lahayn ee lagu tukan jiray, halka? Garo ma ay adag tahay, maxaa yeelay, wareegga egyahay ilaa uu helo qiimaha been ah, oo haddii qiimaha this si fudud halkaas ma joogo? Jawaabta su'aashani waa laga yaabaa in mar hore si wax walba waa cad yahay. Xaaladaha qaarkood, loop ah aan la koobi karayn loo baahan yahay si ay u xaliyaan dhibaato u tahay? Tusaale ahaan Tani waxay u adeegi doonaa sida xaqiijinta ah barnaamij noocan oo kale ah, sida a "saacad." Halkan, dabcan, waxaad u baahan tahay in ay isticmaalaan loop ah aan la koobi karayn, taas oo si joogto ah la updated doonaa iyo tusi waqtiga.

loop koobi karayn inta badan waa barnaamij laylis qalad kan illoobin in aad ku darto ah xaaladaha isbedelka wareegga.

Aynu eegno at waslad soo socda ee code Python. wareegyada The kiiskan celiyay aan xad lahayn (ka dib "#" Dabeecada waa a comment):

Tirada = 1 # sheegi tiro variable iyo ku wareejinayso qiimaha a of 1

halka tiro <10: # abuuro postcondition ah, kaas oo ku tirin ka yar 10

print 'Hello' # xaalad (print «Hello» fariin)

barnaamij noocan oo kale ah ma aha in ku degdegin inaad isku ururiso, sababta oo ah waxa uu socon doonaa muddo aan la cayimin. Waxaan weydiiyay xaaladaha sida in mana jiri doonto weligeed been qiimaha xaalad «tirada <10" kiiskan oo had iyo jeer run, sidaas siyaalaha uu noqon doono si joogto ah taasoo ka dhigaysa tirada N-aad ee "fariimaha Hello". Si aad u joojiso habka of ururinayaan weligeed ah, waxaad u baahan doontaa inaad riix isku darka muhiimka ah Ctrl + C ee qolof ah.

Python: Saan. Inkastoo, iyo siddo

Sida kor ku xusan, in afka ah "lagu tukan jiray" barnaamijyada, waxaa jira siyaabo dhowr ah si ay u abaabulaan a tibaaxaha group celiyaan. Ay timaado gurmadka loop waayo, taas oo qayb ka halka dhigiisa ay kala duwan, sababtoo ah design waa wax yar oo ka adag yihiin oo kaliya postcondition. aynu kama hadlaan caalamiyeen ee wareegga, sababta oo ah waxay si fudud ma aha, si kastaba ha ahaatee, in la ogaadaa in ee loop waa ka dhakhso badan in muddo ah. siyaabo kala duwan si ay u xalliyaan ee design iyo waxqabadka of this wareegga iskhexgalida yar la postcondition, si ka badan waxay u badan tahay in ay isticmaalaan si ay u qabtaan hawlo badan awgood.

Waa maxay caqabadaha haysta wareegga waayo? Waxaa sugan in, la mid ah sida in of halka - iterate geedi socodka kasta. qoraalada Barnaamijka dhigay on the "tukan jiray", waxaa si balaadhan looga isticmaalaa loop, waayo, taasu waa awood fulinta traversal Fundka hannaanka xubno oo aad yeeshid in ay jirka kala duwan iterating iyaga u taliya. Features of design tani waxaa loo isticmaali karaa in khadadka processing ama liiska sida wax kasta oo kale ku celiyay.

Tusaale isticmaalka for wareeg ee Python

Aan niraahno waxaan leenahay liiska qaar ka mid ah lambarrada, iyo waxaan u baahan nahay kasta element (E. ie. Number) kordhay saddex cutub. Si loo fuliyo hawsha sida aan awoodno ah iyada oo loo marayo loop, waayo, hababka loop.

Bal aynu eegno tusaale ahaan degdeg ah, halkaas oo aanu ku samayn doonaa tallaabada ku haboon for this (ka dib "#" Dabeecada waa a comment):

spisok_chisel = [5, 15, 25, 35, 45, 55, 65, 75, 85, 95] # isugu soo sheegay in ay ku jiraan 10 tirooyinka

tirin = 0 # counter abuuray eber

xubno ku spisok_chisel: # iterate badan soo diyaariyeen oo ku qor waxyaabaha

spisok_chisel [tirin] = xubno + # 3 tirada isugu soo kordhaysa oo ah saddex

tirin = tirin + 1 # tag tirada soo socota on index ah

Natiijada dhismaha kor ku xusan waxay noqon doontaa:

spisok_chisel = [8, 18, 28, 38, 48, 58, 68, 78, 88, 98]

In aynu tusaale ahaan, waxaa jira count a variable, taas oo aan u baahan tahay si ay u dabaal qiyamka beddelo in la dagaallamaan «spisok_chisel». count isbedela waxa la diiwaan qiimaha index ah element kasta diyaariyeen (tirada mid kasta oo liiska ku jirta). «Xubno» variable xira qiimaha taasoo keentay in liiska. In for loop, waxaan arkaynaa sida ay u fuliyaan nidaaminta shay kasta ee liiska tiro. Inside loop ka, wax kasta tiro la index «count» daray xaddiga element hadda celiyay iyo saddex. Markaas our index «tirin» kordhay hal, iyo socodka hirgelinta barnaamijka soo laabtay bilowgii xayeysiis dhismaha. Sayidka, loop ku ordi doonaa ilaa ilaa uu baaraandegi element kasta isugu diyaariyeen ka, siiyey xaaladda. Haddii element kasta waa la waayay, laakiin waxaa la dhigay by xaaladda, wareegga dhamaato. Waxaan soo jiidan doonaan dareenka ka mid ah wax ka badan: haddii aanad wax ku qorin line a of «count = tirin + 1", inkastoo xaqiiqda ah in soo diyaariyeen ah ee walxaha si guul baaraandego, natiijada doonaa had iyo jeer lagu daro in marka hore index wax tirsi ah eber c.

Hadda waxaan qabaa karo oo ku saabsan halka mabaadi'da hawlgalka loop oo aqoonsadaan farqiga (xusa in Python baxay wareegga la postcondition waxaa lagu fuliyaa ku salaysan shuruudaha macquul ah - run (wareegga sii) ama been ah (wareegga joojiyo)).

Sida loo daaweeyo string ah ee lagu tukan jiray isticmaalaya design ee?

In luqadda barnaamij kasta waxaa jira wareegyada, iyo ay u shaqeeyaan, sida caadiga ah on mabda'a isku mid ah, kala duwanaanshaha la arki karo oo kaliya in Saan ah. Si kastaba ha ahaatee, ee loop in "lagu tukan jiray" afka ma aha caadiga ah iyo Ciyaalle, sababtoo ah mabda'a ay hawlgal aysan ku koobnayn counter ah. design Tani enumerates shay kasta si gooni gooni ah. All this si fudud loo sharaxi karaa tusaale ah ee la shaqeeya xadhig, laakiin horta aynu la Halabuurka ee wareega ee ka qabtaan:

waayo, variable

Waxaa lagu kaydiyaa natiijada howlgalka wareegga variable ah

in peremennaya_2

muhiimka ah erayga «in» - waa shardi marka la shaqeeyo «for» wareegga. From peremennoy_2 aan jiid qiimaha in loo celiyay doonaa. Waayo, Hufnaan, oo la caddeeyo, bal aynu eegno tusaale yar oo ah sida ay u shaqeeyaan iyo inay kala soocaan xadhig leh ee lagu tukan jiray,

char = 'barnaamijyada' # sheegi variable ah oo ku meeleeyo qiimaha xarig ah

waayo, slovo in char: # Samee slovo a variable, taas oo sii wadi doonaa codes of baabi'iyaasha char variable

print (slovo, dhamaadka = '^') # Output ku slovo iyo ka dib warqad kasta, gelin calaamad - shimbir.

Natiijada script ah:

P ^ p ^ o ^ r ^ r ^ a ^ m ^ m ^ ^ iyo p ^ o ^ a ^ a ^ n ^ oo ^ e

sii hadal

operator sii hirgalinta guurka fulinta ee wareegga xiga, la siiyo by xaaladda, iyadoo aan loo eegin dheelitirka ee loop ka. Isticmaal sii hadal noqon karaa laba wareegyada - iyo halka.

Ka fiirso tusaale ahaan this:

waayo, count ee 'celi xaraf walba, marka laga reebo'

haddii count == 'o':

sii

print (count * 2, dhamaadka = '')

Natiijadu waxay noqon doontaa waxyaabaha soo socda:

Ppvvttrriimm kkaazhzhdduuyuyu bbuukkvvuu ,, kkrrmmee

Marka Handler wuxuu ka helay warqad "o" in xadhigga 'celi xaraf walba, marka laga reebo' fulinta barnaamijka markiiba gudbiyo line ka dib markii erayga '' sii '', halkaas oo xaaladda la dhigay in nuqul warqad kasta.

war joojin

Keyword «fasax» geliyo meeshii wareeg waa in la kala gooyey oo aan sugin ay dhamaystirka, oo waxaa loo soo dhiibay xaaladda. design Tani waxaa inta badan loo isticmaalaa marka qoraal barnaamijyo badan ee macquulka ah iyo xaaladaha.

Ka fiirso tusaale yar oo ah qoraal fasax shaqada:

waayo, count ee 'celi xaraf walba, marka laga reebo'

haddii count == 'o':

nasashada

print (count * 2, dhamaadka = '')

Natiijadu waxay noqon doontaa waxyaabaha soo socda:

nn

Marka Handler wuxuu ka helay warqad "o" in xadhigga 'warqad kasta oo ay ku soo celiyaan marka laga reebo' fulinta barnaamijka markiiba joojiyay, inkastoo xaqiiqda ah in laynka ku xiga waxaa ku jira qaar ka mid ah shuruudaha wareegga.

Eraygii Sixir kale

In taxane ah oo nooc kasta oo ka codsan kartaa shaqaale kale ah. Waa maxay ah? Waxa uu sidoo kale jeeg wixii lagu go'an out of loop ka dhigan yahay nasasho ama sidii caadiga ahayd. Xannibi sharciyada loo dejiyay in hirgelinta kale bilaabaan oo kaliya marka shardi ah in wax soo saarka ee wareegga ayaa lagu fuliyay oo aan isticmaalka qaab dhismeedka nasasho.

Ka fiirso tusaale yar:

waayo, count ee 'hello adduunka':

haddii count == 'aan:

nasashada

kale:

print ( 'Your xukunka ayaa warqad ma' aan ')

wax soo saarka ee script ah:

Your xukunka ma aha warqad "I" ee

Tusaalooyinka wareegyada si dambe ee afka barnaamijyada Python

Sida hirgeliyo Python wareegga dambe? Aynu qiyaasi in qoraal barnaamij u baahan in la aqoonsado line qof oo ku daabacan si cagsi ah. Sidee baa waxanu si loo fuliyo?

Ka fiirso tusaale ahaan hoos ku qoran:

slovo = 'barnaamijyada'

new_slovo = []

waayo, count kala duwan (Len (s), 0, -1):

new_slovo.append (s [i-1])

new_slovlo

[ 'P', 'p', 'o', 'g', 'p', 'a', 'm', 'm', 'u', 'p', 'o', 'a', ' a ',' n ',' u ',' e ']

print (new_slovo)

[ 'P', 'p', 'o', 'g', 'p', 'a', 'm', 'm', 'u', 'p', 'o', 'a', ' a ',' n ',' u ',' e ']

print ( ''. biiro (new_slovo))

Natiijada script ah:

einavorimmargorp

oo siddooyinkuna nested

In lagu tukan jiray, waxaa kale oo jira wareegyada ee barnaamijyada iyo maalgelinta, in la dhigayaa in jirka ah ee kale. In baaskiil kasta noqon kartaa loop a nested, iyo si ay suurogal tahay in la dhiso sallaan si xad la'aan. In siyaalaha ugu horeysay ee loop dibadda waxaa lagu sawiray la call a in loop gudaha, kaas oo toogasho ka hor dhamaystirka u gaar ah, ka dibna gacanta ku wada wareejiyey galay jidhka loop dibadda. luqad kasta waxay leedahay astaamo u gaar ah oo ah u yeeshaa siddooyin nested, bal aynu eegno sida ay u shaqeeyaan ee "Python" af barnaamijyada.

Haddii aad isticmaalayso siddo nested, Python bixisaa Saan soo socda:

waayo, variable ee isku xigxiga ee doorsoomayaasha:

waayo, variable ee isku xigxiga ee doorsoomayaasha

action (s)

action (s)

The sifooyinka gaarka ah ee siddo nested waa xaqiiqada ah in wareegga ah ee nooc kasta oo loo isticmaali karaa sida nooc kasta oo wareegga! Taas macnaheedu waxa weeye in wareegga ah halka (ama) la hirgaliyey kartaa wareegga ama mar halka iyo qeybsanaan.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 so.delachieve.com. Theme powered by WordPress.