ciclo for in python. Sintassi, iterazione elenco, interruzione, continua e altre funzionalità

Цikl per Python i ciclo mentre – dichiarazioni Software lingua, vale a dire: operatori di iterazione, lettING ripetere il codice dato numero tempo.

Цикл Per — сintassi

Come già spiegato, cinclude for in Python è un iteratore basato suй per cicloidentità. è lui atti da elementi tupla и lista, vocabolario chiavi e Altro oggetti iterabili.

Un ciclo in Python inizia con la parola chiave for, seguita da un nome di variabile arbitrario che memorizza il valore dell'oggetto successivo nella sequenza data. La sintassi generale per for...in in python è simile a questa:

per in: altro:      

Componenti "sequenze" sono elencati uno dopo l'altro variabile ciclo. O piuttosto, punti variabili a tale elementi. Per tutti di loro "azione" viene eseguita.

Un semplice ciclo for in Python con un esempio specifico:

>>> linguaggi = ["C", "C++", "Perl", "Python"] >>> per x nelle lingue: ... print(x) ... C C++ Perl Python >>>

Il blocco else è specialeth. Se una programmatoreыlavoro с Perl familiareы con lui, che per chi interagisce с C e C++ — questa è un'innovazione. Semanticamente esso funzioni тidenticamente mentre il ciclo.

Eseguito solo quando il ciclo non viene "fermato" dall'istruzione break. Cioè, viene eseguito solo dopo che tutti gli elementi sono passati attraverso la sequenza specificata.

Operatore Break in Python – interruzione

Se il programma ha un ciclo for necessaria interrompere, il dichiarazione di rottura, he completamento di unavaed Programma flusso volere contoessere senza attivazione da altro.

Più spesso rompere le frasi in Pythonuyutsya con affermazioni condizionali.

edibles = ["chops", "gnocchi","uova","nuts"] for food in edibles: if food == "gnocchi": print("Non mangio gnocchi!") break print("Ottimo, delizioso " + cibo) else: print("È bello che non ci fossero gnocchi!") print("La cena è finita.")

Se esegui questo codice, ottieni il seguente risultato:

Braciole ottime e deliziose. Non mangio gnocchi! La cena è finita.

Rimuoviamo gli "gnocchi" dall'elenco di dati esistente e otteniamo:

Braciole eccellenti e deliziose Uova eccellenti e deliziose Noci eccellenti e deliziose Meno male che non c'erano gnocchi! La cena è finita.

python skip operatore – continua

Diciamo che l'antipatia dell'utente nei confronti di tali prodotti non è così grande da abbandonarne completamente il consumo. Di conseguenza, il ciclo continua con l'operatore continue. Lo script seguente utilizza l'istruzione continue, per continuare a scorrere l'elenco sui "contatti gnocchi".

edibles = ["chops", "gnocchi","uova","nuts"] for food in edibles: if food == "gnocchi": print("Non mangio gnocchi!") continue print("Ottimo, delizioso " + cibo) # questo potrebbe essere il codice per gustare il cibo :-) else: print("Odio gli gnocchi!") print("La cena è finita.")

La linea di fondo:

Braciole ottime e deliziose. Non mangio gnocchi! Uova fantastiche e deliziose Noci fantastiche e deliziose Odio gli gnocchi! La cena è finita.

Iterazione sulle liste con la funzione range()

Se vuoi accedere agli indici di un elenco, non è chiaro come utilizzare un ciclo for per questo scopo. È possibile accedere a tutti gli elementi, ma l'indice dell'elemento rimarrà inaccessibile. Tuttavia, esiste un metodo per accedere sia all'indice dell'elemento che all'elemento stesso. A tale scopo viene utilizzata la funzione range() combinato con la funzione di lunghezza len():

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

Ottenere:

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

Attenzione! Quando applicato len() к list or tuple, si ottiene il numero corrispondente di elementi della sequenza data.

Difficoltà di iterazione sulle liste

Quando si esegue l'iterazione su un elenco, si consiglia di evitare le dinamiche dell'elenco nel corpo del ciclo. Per chiarezza, possiamo offrire la seguente opzione:

colori = ["rosso"] for i nei colori: if i == "rosso": colori += ["nero"] if i == "nero": colori += ["bianco"] print(colori)

Cosa succede quando si applica print(colours)?

['rosso', 'nero', 'bianco']

Per evitare ciò, si consiglia di interagire con la copia utilizzando gli slice, come nell'esempio seguente:

colori = ["rosso"] for i in colori[:]: if i == "rosso": colori += ["nero"] if i == "nero": colori += ["bianco"] print(colori )

Risultato:

['Rosso nero']

L'elenco è stato modificato colours, ma questa azione non ha influito sul ciclo. I dati che dovevano essere ripetuti sono rimasti invariati durante l'esecuzione del ciclo.

Enumera in Python 3

Enumerate è una funzione Python incorporata. La maggior parte dei principianti, così come alcuni programmatori esperti, non sono consapevoli della sua esistenza. Ti consente di contare automaticamente le iterazioni del ciclo. Per esempio:

per contatore, valore in enumerate(some_list): print(counter, value)

Funzione enumerate accetta anche un argomento facoltativo (il valore dell'origine, preso di default per 0). Il che lo rende ancora più efficiente.

mia_lista = ['mela', 'banana', 'ciliegia', 'pesca'] for c, valore in enumerate(mia_lista, 1): print(c, valore) # Risultato: # 1 mela # 2 banana # 3 ciliegia # 4 pesca

Lascia un Commento