fir Loop am Python. Syntax, Lëscht Iteratioun, Paus, weider an aner Funktiounen

Цikl fir Python i Zyklus iwwerdeems - Aussoen Software Sprooch, nämlech: iteration Opérateuren, loosseIng widderhuelen Code uginn Nummer Zäit.

Цикл Fir - сintaxis

Wéi scho erkläert, centhalen fir am Python ass en Iterator baséiert opй pro ZyklusIdentitéit. ass hien Akten duerch tuple Elementer и Lëscht, Vokabulär Schlësselen an aner iterable Objeten.

Eng Loop am Python fänkt mat dem for Schlësselwuert un, gefollegt vun engem arbiträren Variabelnumm deen de Wäert vum nächsten Objet an der bestëmmter Sequenz späichert. Déi allgemeng Syntax fir for…in am Python gesäit esou aus:

fir an: anescht:      

Komponente "Sequenzen" ginn genannt een nom aneren Zyklus variabel. Oder éischter, Variabel Punkten op esou Elementer. Fir jiddereen vun deenen "Aktioun" gëtt gemaach.

Eng einfach fir Loop am Python mat engem spezifesche Beispill:

>>> Sproochen = ["C", "C++", "Perl", "Python"] >>> fir x a Sproochen: ... print(x) ... C C++ Perl Python >>>

Deen anere Block ass speziellth. Wann a Programméiererыschaffen с Perl kenntы mat him, datt fir déi, déi interagéieren с C an C++ — dëst ass eng Innovatioun. Semantesch et Funktiounen тidentesch während Loop.

Nëmmen ausgefouert wann d'Loop net vun der Paus Ausso "gestoppt" gëtt. Dat ass, et gëtt nëmmen ausgefouert nodeems all Elementer duerch déi spezifizéiert Sequenz passéiert sinn.

Pausoperateur am Python - Paus

Wann de Programm e For Loop huet néideg sinn ze interruptéierender Ausso briechen, he komplettet geetan Programm ze fléissen wäert contsinn ouni Aktivatioun vun aneren.

Méi oft Ausdréck am Python briechenuutsya mat bedingten Aussoen.

edibles = ["Kottletten", "Knödeln","Eeër","Nëss"] fir Iessen an Iessen: wann Iessen == "Knödeln": print("Ech iessen keng Kniddelen!") break print("Super, lecker " + Iessen) else: print("Et ass gutt datt et keng Kniddelen waren!") print("Dinner ass eriwwer.")

Wann Dir dëse Code leeft, kritt Dir dat folgend Resultat:

Flott, lecker Koteletten. Ech iessen keng Kniddelen! Dinner ass eriwwer.

Mir läschen "dumplings" aus der existéierender Lëscht vun Daten a kréien:

Exzellent, lecker Koteletten Exzellent, lecker Eeër Exzellent, lecker Nëss Gutt Saach et waren keng Kniddelen! Dinner ass eriwwer.

Python Skip Operator - weider

Loosst eis soen datt d'Antipathie vum Benotzer zu sou Produkter net sou grouss ass fir hire Konsum komplett opzeginn. Als Resultat geet d'Loop weider mam Bedreiwer continue. Déi folgend Skript benotzt d'Ausso continue, fir weider duerch d'Lëscht op "Knäppelkontakt" ze iteréieren.

edibles = ["Kottletten", "Knödeln","Eeër","Nëss"] fir Iessen an Iessen: wann Iessen == "Knödeln": print("Ech iessen keng Kniddelen!") weider drécken("Super, lecker " + Iessen) # dëst kéint Code sinn fir Iessen ze genéissen :-) else: print("Ech haassen Kniddelen!") print("Dinner ass eriwwer.")

Déi ënnescht Linn:

Flott, lecker Koteletten. Ech iessen keng Kniddelen! Grouss, lecker Eeër Grouss, lecker Nëss Ech haassen Kniddelen! Dinner ass eriwwer.

Iteréieren iwwer Lëschte mat der Range () Funktioun

Wann Dir op d'Indexe vun enger Lëscht wëllt zougräifen, ass et net kloer wéi Dir e for Loop fir dësen Zweck benotzt. Et ass méiglech all Elementer ze kréien, awer den Index vum Element bleift onzougänglech. Wéi och ëmmer, et gëtt eng Method fir Zougang zum Index vum Element an dem Element selwer ze kréien. Fir dësen Zweck gëtt d'Funktioun benotzt range() kombinéiert mat der Längt Funktioun len():

fibonacci = [0,1,1,2,3,5,8,13,21] fir i am Beräich(len(fibonacci)): print(i,fibonacci[i])

Hutt:

0 0 1 1 2 1 3 2 4 3 5 5 6

Opgepasst! Wann applizéiert len() к list or tuple, gëtt déi entspriechend Unzuel vun Elementer vun der bestëmmter Sequenz kritt.

Schwieregkeete fir iwwer Lëschten ze iteréieren

Wann Dir iwwer eng Lëscht iteréiert, ass et recommandéiert d'Lëschtdynamik am Loopkierper ze vermeiden. Fir Kloerheet kënne mir déi folgend Optioun ubidden:

Faarwen = ["rout"] fir i a Faarwen: wann ech == "rout": Faarwen += ["schwaarz"] wann ech == "schwaarz": Faarwen += ["wäiss"] Drécken (Faarwen)

Wat geschitt bei der Demande print(colours)?

['rout', 'schwaarz', 'wäiss']

Fir dëst ze vermeiden, ass et recommandéiert mat der Kopie mat Scheiwen ze interagéieren, wéi am Beispill hei ënnen:

Faarwen = ["rout"] fir i a Faarwen[:]: wann ech == "rout": Faarwen += ["schwaarz"] wann ech == "schwaarz": Faarwen += ["wäiss"] print (Faarwen )

Resultat:

['Red Black']

D'Lëscht gouf geännert colours, awer dës Aktioun huet d'Loop net beaflosst. D'Donnéeën, déi iteréiert musse ginn, bloufen onverännert während der Ausféierung vun der Loop.

Enumeréieren am Python 3

Enumerate ass eng agebauter Python Funktioun. Déi meescht Ufänger, wéi och e puer erfuerene Programméierer, sinn net bewosst vu senger Existenz. Et erlaabt Iech automatesch Iteratiounen vun der Loop ze zielen. Zum Beispill:

fir Konter, Wäert an enumerate (e puer_Lëscht): Drécken (Konter, Wäert)

Funktioun enumerate hëlt och en fakultativ Argument (de Wäert vun der Hierkonft, als Standard geholl fir 0). Wat mécht et nach méi efficace.

my_list = ['Apple', 'Bananen', 'Kiischt', 'Peach'] fir c, Wäert an enumerate (my_list, 1): Drécken (c, Wäert) # Resultat: # 1 Apel # 2 Bananen # 3 Kiischten # 4 peech

Hannerlooss eng Äntwert