para sa loop sa python. Syntax, list iteration, break, continue at iba pang feature

Цikl para sawa i ikot habang – mga pahayag software wika, ibig sabihin: mga operator ng pag-ulit, hayaaning ulitin ang code ibinigay na numero time.

Цикл Para sa - сintaxis

Gaya ng ipinaliwanag na, cisama para sa Python ay isang iterator batay saй bawat ikotpagkakakilanlan. siya ba kilos sa pamamagitan ng mga elemento ng tuple и sulat, bokabularyo mga susi at iba iterable na mga bagay.

Ang isang loop sa Python ay nagsisimula sa para sa keyword, na sinusundan ng isang arbitrary na pangalan ng variable na nag-iimbak ng halaga ng susunod na bagay sa ibinigay na pagkakasunud-sunod. Ang pangkalahatang syntax para sa for…in sa python ay ganito ang hitsura:

para sa : else:      

Piraso "mga pagkakasunud-sunod" ay nakalista sunud-sunod variable ng ikot. O sa halip, variable na puntos sa tulad mga elemento. Para sa lahat ng mga ito Ang "aksyon" ay isinasagawa.

Isang simple para sa loop sa Python na may partikular na halimbawa:

>>> mga wika = ["C", "C++", "Perl", "Python"] >>> para sa x sa mga wika: ... print(x) ... C C++ Perl Python >>>

Ang ibang bloke ay espesyalika. Kung ang programistaыnagtatrabaho с Pamilyar si Perlы Kasama siya, na para sa mga nakikipag-ugnayan с C at C++ — ito ay isang inobasyon. Semantically ito function тmagkapareho habang loop.

Isinasagawa lamang kapag ang loop ay hindi "tinigil" ng break na pahayag. Iyon ay, ito ay isinasagawa lamang pagkatapos na ang lahat ng mga elemento ay dumaan sa tinukoy na pagkakasunud-sunod.

Break operator sa python – break

Kung ang programa ay may para sa loop kinakailangan makatakipang break na pahayag, he mataposnapupunta itoat programa pag-agos habilin katuloyupang maging wala aktibasyon mula sa iba.

Mas madalas masira ang mga parirala sa pythonuutsya na may mga kondisyong pahayag.

edibles = ["chops", "dumplings","eggs","nuts"] para sa pagkain sa edibles: kung pagkain == "dumplings": print("Hindi ako kumakain ng dumplings!") break print("Mahusay, masarap " + pagkain) else: print("Buti naman walang dumplings!") print("Tapos na ang hapunan.")

Kung patakbuhin mo ang code na ito, makukuha mo ang sumusunod na resulta:

Mahusay, masarap na chops. Hindi ako kumakain ng dumplings! Tapos na ang hapunan.

Inalis namin ang "dumplings" mula sa kasalukuyang listahan ng data at nakakuha kami ng:

Magaling, masarap na chops Magaling, masarap na itlog Magaling, masarap na mani Buti na lang walang dumplings! Tapos na ang hapunan.

python skip operator - magpatuloy

Sabihin natin na ang antipatiya ng gumagamit sa mga naturang produkto ay hindi napakahusay na ganap na iwanan ang kanilang pagkonsumo. Bilang resulta, ang loop ay nagpapatuloy sa operator continue. Ang sumusunod na script ay gumagamit ng pahayag continue, upang magpatuloy sa pag-ulit sa listahan sa "dumpling contact".

edibles = ["chops", "dumplings","eggs","nuts"] para sa pagkain sa edibles: kung pagkain == "dumplings": print("Hindi ako kumakain ng dumplings!") continue print("Mahusay, masarap " + pagkain) # ito ay maaaring code para sa pagtangkilik ng pagkain :-) iba pa: print("I hate dumplings!") print("Tapos na ang hapunan.")

Sa ilalim na linya:

Mahusay, masarap na chops. Hindi ako kumakain ng dumplings! Mahusay, masarap na itlog Mahusay, masarap na mani Ayaw ko sa dumplings! Tapos na ang hapunan.

Pag-ulit sa mga listahan gamit ang range() function

Kung gusto mong i-access ang mga index ng isang listahan, hindi malinaw kung paano gumamit ng for loop para sa layuning ito. Posibleng ma-access ang lahat ng elemento, ngunit ang index ng elemento ay mananatiling hindi naa-access. Gayunpaman, mayroong isang paraan para ma-access ang parehong index ng elemento at ang elemento mismo. Para sa layuning ito, ginagamit ang function range() pinagsama sa pag-andar ng haba len():

fibonacci = [0,1,1,2,3,5,8,13,21] para sa i in range(len(fibonacci)): print(i,fibonacci[i])

Kumuha ng:

0 0 1 1 2 1 3 2 4 3 5 5 6 8 7 13 8 21

Pansin! Kapag inilapat len() к list or tuple, ang katumbas na bilang ng mga elemento ng ibinigay na pagkakasunod-sunod ay nakuha.

Mga kahirapan sa pag-ulit sa mga listahan

Kapag umuulit sa isang listahan, inirerekomendang iwasan ang mga dinamika ng listahan sa katawan ng loop. Para sa kalinawan, maaari naming ialok ang sumusunod na opsyon:

mga kulay = ["pula"] para sa i sa mga kulay: kung i == "pula": mga kulay += ["itim"] kung i == "itim": mga kulay += ["puti"] print(mga kulay)

Ano ang mangyayari kapag nag-aaplay print(colours)?

['pula', 'itim', 'puti']

Upang maiwasan ito, inirerekumenda na makipag-ugnayan sa kopya gamit ang mga hiwa, tulad ng sa halimbawa sa ibaba:

mga kulay = ["pula"] para sa i sa mga kulay[:]: kung i == "pula": mga kulay += ["itim"] kung i == "itim": mga kulay += ["puti"] print(mga kulay )

Resulta:

['Red Black']

Ang listahan ay binago colours, ngunit hindi naapektuhan ng pagkilos na ito ang loop. Ang data na kailangang ulitin ay nanatiling hindi nagbabago sa panahon ng pagpapatupad ng loop.

Magbilang sa python 3

Ang Enumerate ay isang built-in na Python function. Karamihan sa mga baguhan, pati na rin ang ilang karanasang programmer, ay hindi alam ang pagkakaroon nito. Pinapayagan ka nitong awtomatikong mabilang ang mga pag-ulit ng loop. Halimbawa:

para sa counter, value sa enumerate(some_list): print(counter, value)

tungkulin enumerate kumukuha din ng opsyonal na argumento (ang halaga ng pinagmulan, na kinuha bilang default para sa 0). Na ginagawa itong mas mahusay.

my_list = ['apple', 'banana', 'cherry', 'peach'] para sa c, value sa enumerate(my_list, 1): print(c, value) # Resulta: # 1 mansanas # 2 banana # 3 cherry # 4 na milokoton

Mag-iwan ng Sagot