Python Cicli For e While (con esempi)

โšก Riepilogo intelligente

Python I cicli ripetono un blocco di codice finchรฉ non viene soddisfatta una determinata condizione. I cicli for e while, insieme alle istruzioni break, continue ed enumerate, controllano quante volte vengono eseguite le iterazioni, come dimostrano gli esempi seguenti.

  • ๐Ÿ” Loop: Un ciclo esegue ripetutamente un blocco di codice finchรฉ la sua condizione non lo interrompe.
  • ๐Ÿ”ข Per Loop: Il ciclo for itera su una sequenza, come un intervallo, una lista o una stringa.
  • โ™ป๏ธ Mentre il ciclo: Il ciclo while continua a ripetersi finchรฉ la sua condizione rimane vera.
  • โ›” Rompere: L'istruzione break interrompe immediatamente il ciclo nel punto prescelto.
  • โญ๏ธ Continua: L'istruzione continue salta l'iterazione corrente e passa alla successiva.
  • ๐Ÿ”– Enumerare: La funzione enumerate() associa ogni elemento a un indice mentre looping.

Python Cicli For e While

Cos'รจ Loop?

I cicli possono eseguire un blocco di codice un numero di volte fino a quando non viene soddisfatta una determinata condizione. Il loro utilizzo รจ abbastanza comune nella programmazione. A differenza di altri linguaggi di programmazione che hanno For Loop, while loop, do while, ecc.

Cos'รจ For Loop?

Il ciclo For viene utilizzato per scorrere gli elementi di una sequenza. Viene spesso utilizzato quando si dispone di un pezzo di codice che si desidera ripetere un numero "n" di volte.

Cos'รจ il ciclo While?

Mentre Loop viene utilizzato per ripetere un blocco di codice. Invece di eseguire il blocco di codice una volta, lo esegue piรน volte finchรฉ non viene soddisfatta una determinata condizione.

Come utilizzare โ€œWhile Loopโ€

Mentre il loop fa esattamente la stessa cosa di "if", ma invece di eseguire il blocco di codice una volta, torna al punto in cui ha iniziato il codice e ripete nuovamente l'intero processo.

Sintassi

while expression
 Statement

Esempio:

#
#Example file for working with loops
#
x=0
#define a while loop
while(x <4):
		print(x)
		x = x+1

Uscita prevista:

0
1
2
3
  • Code Riga 4: La variabile x รจ impostata a 0
  • Code Riga 7: Il ciclo while verifica la condizione x<4. Il valore corrente di x รจ 0. La condizione รจ vera. Il flusso di controllo entra nel ciclo while.
  • Code Riga 8: viene stampato il valore di x
  • Code Riga 9: x viene incrementato di 1. Il flusso di controllo torna alla riga 7. Ora il valore di x รจ 1, che รจ minore di 4. La condizione รจ vera e il ciclo while viene eseguito di nuovo. Questo continua finchรฉ x non diventa 4 e la condizione while diventa falsa.

Come utilizzare โ€œFor Loopโ€

In Python, vengono chiamati i โ€œcicli forโ€. iteratori.

Proprio come il ciclo while, anche โ€œFor Loopโ€ viene utilizzato per ripetere il programma.

Ma a differenza del ciclo while che dipende dalla condizione vera o falsa. "For Loop" dipende dagli elementi che deve iterare.

Esempio:

#
#Example file for working with loops
#
x=0
#define a while loop
#	while(x <4):
#		print x
#		x = x+1

#Define a for loop 
for x in range(2,7):
		print(x)

Uscita prevista:

2
3
4
5
6

For Loop esegue l'iterazione con il numero dichiarato nell'intervallo.

Per esempio,

Per Loop per x nell'intervallo (2,7)

Quando questo codice viene eseguito, stamperร  il numero compreso tra 2 e 7 (2,3,4,5,6). In questo codice il numero 7 non รจ considerato all'interno dell'intervallo.

For Loops puรฒ essere utilizzato anche per una serie di altre cose e non solo per i numeri. Vedremo il sottile nella prossima sezione.

Come utilizzare For Loop per String

In questo passaggio vedremo come i โ€œcicli forโ€ possono essere utilizzati anche per altre cose oltre ai numeri.

Esempio:

#use a for loop over a collection
Months = ["Jan","Feb","Mar","April","May","June"]
for m in Months:
		print(m)

Uscita prevista:

Jan
Feb
Mar
April
May
June

Code Riga 3: Memorizziamo i mesi (โ€œGen, Feb, Mar, Apr, Mag, Giuโ€) nella variabile Months

Code Riga 4: Iteriamo il ciclo for su ogni valore in Months. Il valore corrente di Months รจ memorizzato nella variabile m

Code Riga 5: Stampa il mese

Come utilizzare le istruzioni break nel ciclo For

Breakpoint รจ una funzione unica in For Loop che ti consente di interrompere o terminare l'esecuzione del ciclo for

Esempio:

#use a for loop over a collection
	#Months = ["Jan","Feb","Mar","April","May","June"]
	#for m in Months:
		#print m
		
# use the break and continue statements
for x in range (10,20):
			if (x == 15): break
			#if (x % 2 == 0) : continue
			print(x)

Uscita prevista:

10
11
12
13
14

In questo esempio, abbiamo dichiarato i numeri da 10 a 20, ma vogliamo che il nostro ciclo for termini al numero 15 e interrompa l'esecuzione. Per questo, dichiariamo la funzione break definendo (x==15): break, in modo che non appena il codice incontra il numero 15, il programma termini. Code La riga 10 dichiara la variabile x compresa nell'intervallo (10, 20)

  • Code La riga 11 dichiara la condizione per il breakpoint in x==15,
  • Code La riga 12 controlla e ripete i passaggi fino a raggiungere il numero 15
  • Code Riga 13 Stampa il risultato nell'output

Come utilizzare l'istruzione "continua" nel ciclo For

La funzione Continue, come indica il nome, terminerร  l'iterazione corrente del ciclo for MA continuerร  l'esecuzione delle iterazioni rimanenti.

Esempio

#use a for loop over a collection
	#Months = ["Jan","Feb","Mar","April","May","June"]
	#for m in Months:
		#print m
		
# use the break and continue statements
for x in range (10,20):
			#if (x == 15): break
			if (x % 5 == 0) : continue
			print(x)

Uscita prevista:

11
12
13
14
16
17
18
19

L'istruzione Continue puรฒ essere utilizzata nel ciclo for quando si desidera recuperare un valore specifico dall'elenco.

Nel nostro esempio abbiamo dichiarato il valore 10-20, ma tra questi numeri vogliamo solo quelli che NON sono divisibili per 5 o cioรจ che non danno zero quando divisi per 5.

Quindi, nel nostro intervallo (10,11, 12โ€ฆ.19,20) rientrano solo 3 numeri (10,15,20) che sono divisibili per 5 e gli altri no.

Quindi, ad eccezione dei numeri 10,15 e 20, il โ€œciclo forโ€ non continuerร  e stamperร  quei numeri come output.

  • Code riga 10 dichiara la variabile x per l'intervallo (10, 20)
  • Code riga 12 dichiara la condizione per x diviso 5=0 continua
  • Code riga 13 stampa il risultato

Che cosa รจ enumerate() in Python?

enumerate() IN PYTHON รจ una funzione integrata utilizzata per assegnare un indice a ciascun elemento dell'oggetto iterabile. Aggiunge un ciclo sugli oggetti iterabili mantenendoping tracrestituisce l'oggetto k dell'elemento corrente in forma enumerabile. Questo oggetto puรฒ essere utilizzato in un ciclo for per convertirlo in una lista tramite il metodo list().

Esempio:

Enumerare la funzione viene utilizzato per numerare o indicizzare i membri dell'elenco.

Supponiamo di voler eseguire la numerazione per il nostro mese (gennaio, febbraio, marzo, ....giugno), quindi dichiariamo la variabile i che enumera i numeri mentre m stamperร  il numero del mese nell'elenco.

#use a for loop over a collection
Months = ["Jan","Feb","Mar","April","May","June"]
for i, m in enumerate (Months):
		print(i,m)
		
# use the break and continue statements
		
		#for x in range (10,20):
		#if (x == 15): break
		#if (x % 5 == 0) : continue
		#print x

Uscita prevista:

0 Jan
1 Feb
2 Mar
3 April
4 May
5 June

Quando il codice viene eseguito, l'output della funzione enumera restituisce il nome del mese con un numero di indice come (0-gen), (1-feb), (2-marzo), ecc.

  • Code La riga 3 riporta l'elenco dei mesi [Gen, Feb,โ€ฆGiu]
  • Code La riga 4 dichiara le variabili i e m per il ciclo For
  • Code La riga 5 stamperร  il risultato e inserirร  nuovamente il ciclo For per il resto dei mesi da enumerare

Esempio pratico

Vediamo un altro esempio di For Loop per ripetere la stessa istruzione piรน e piรน volte.

Python loop lavoro Code per tutti gli esercizi
Code ciclo for while
x=0    
while (x<4):
    print (x)
    x= x+1
Esempio semplice per il ciclo
x=0 
for x in range (2,7):
    print (x)
Utilizzo del ciclo for in una stringa
Months = ["Jan","Feb","Mar","April","May","June"]
for m in (Months):
    print (m)
Utilizzare l'istruzione break nel ciclo for
for x in range (10,20):
       if (x == 15): break
       print (x)
Utilizzo dell'istruzione Continue nel ciclo for
for x in range (10,20):
       if (x % 5 == 0): continue
       print (x)
Code per โ€œenumerare la funzioneโ€ con โ€œciclo forโ€
Months = ["Jan","Feb","Mar","April","May","June"]
for i, m in enumerate (Months):
    print (i,m)

Come utilizzare il ciclo for per ripetere la stessa istruzione piรน e piรน volte

Puoi usare il ciclo for anche per ripetere la stessa istruzione piรน e piรน volte. Qui nell'esempio abbiamo stampato la parola "guru99" tre volte.

Esempio: per ripetere la stessa istruzione un numero di volte, abbiamo dichiarato il numero nella variabile i (i in 123). Quindi, quando esegui il codice come mostrato di seguito, stampa l'istruzione (guru99) che molte volte il numero dichiarato per la nostra variabile in ( i in 123).

for i in '123':
 print ("guru99",i,)

Uscita prevista:

guru99 1
guru99 2
guru99 3

Come altri linguaggi di programmazione, Python utilizza anch'esso un ciclo ma invece di utilizzare una serie di cicli diversi รจ limitato a soli due cicli โ€œciclo Whileโ€ e โ€œciclo forโ€.

  • I cicli While vengono eseguiti in base al fatto che l'istruzione condizionale sia vera o falsa.
  • I cicli For sono chiamati iteratori, iterano l'elemento in base alla condizione impostata
  • Python I cicli for possono essere utilizzati anche per una serie di altre cose (specificando la raccolta di elementi su cui vogliamo eseguire il ciclo)
  • Il punto di interruzione viene utilizzato nel Ciclo For per interrompere o terminare il programma in un punto particolare
  • L'istruzione Continue continuerร  a stampare l'istruzione e stamperร  il risultato secondo la condizione impostata
  • La funzione enumera in "ciclo for" restituisce il membro della raccolta che stiamo esaminando con il numero di indice

Python 2 Esempio

I codici sopra riportati sono Python 3 esempi, se vuoi correre Python 2 Si prega di considerare il seguente codice.

# How to use "While Loop"
#Example file for working with loops
#

x=0
#define a while loop
while(x <4):
		print x
		x = x+1

#How to use "For Loop"
#Example file for working with loops
#

x=0
#define a while loop
#	while(x <4):
#		print x
#		x = x+1

#Define a for loop 
for x in range(2,7):
		print x

#How to use For Loop for String
#use a for loop over a collection
	Months = ["Jan","Feb","Mar","April","May","June"]
	for m in Months:
		print m
		

#How to use break statements in For Loop
	#use a for loop over a collection
	#Months = ["Jan","Feb","Mar","April","May","June"]
	#for m in Months:
		#print m
		
# use the break and continue statements
		for x in range (10,20):
			if (x == 15): break
			#if (x % 2 == 0) : continue
			print x

#How to use "continue statement" in For Loop
	#use a for loop over a collection
	#Months = ["Jan","Feb","Mar","April","May","June"]
	#for m in Months:
		#print m
		
# use the break and continue statements		
		for x in range (10,20):
			#if (x == 15): break
			if (x % 5 == 0) : continue
			print x

#How to use "enumerate" function for "For Loop"
	#use a for loop over a collection
	Months = ["Jan","Feb","Mar","April","May","June"]
	for i, m in enumerate (Months):
		print i,m
		
# use the break and continue statements
		#for x in range (10,20):
		#if (x == 15): break
		#if (x % 5 == 0) : continue
		#print x

Produzione:

0
1
2
3

2
3
4
5
6

Jan
Feb
Mar
April
May
June

10
11
12
13
14

11
12
13
14
16
17
18
19

0 Jan
1 Feb
2 Mar
3 April
4 May
5 June

DOMANDE FREQUENTI

Un ciclo for itera su una sequenza nota, come una lista o un intervallo, mentre un ciclo while continua a essere eseguito finchรฉ la sua condizione non diventa falsa. Usa for quando conosci gli elementi e while per la ripetizione senza fine.

L'istruzione break interrompe immediatamente l'intero ciclo, mentre continue salta solo l'iterazione corrente e passa alla successiva. Break interrompe completamente il ciclo, mentre continue lo mantiene in esecuzione.

L'istruzione pass รจ un segnaposto nullo che non fa nulla. Viene utilizzato quando Python La sintassi richiede un'istruzione ma non รจ richiesta alcuna azione, come ad esempio un corpo di ciclo vuoto o uno stub che si prevede di completare in seguito.

Sรฌ. Un blocco loop else viene eseguito solo quando il ciclo termina normalmente senza incontrare un'interruzione. รˆ utile per la logica di ricerca, ad esempio per stampare un messaggio di errore dopo aver scansionato ogni elemento di una sequenza.

Utilizzare while True: per ripetere il ciclo all'infinito, quindi uscire con un'istruzione break quando viene soddisfatta una condizione. Python Non ha un ciclo do-while integrato, quindi while True con break รจ il modo comune per emularne uno.

Un'istruzione break interrompe solo il ciclo piรน interno che la contiene, quindi i cicli esterni continuano a essere eseguiti. Per uscire da tutti i cicli contemporaneamente, utilizzare una variabile flag oppure spostare i cicli all'interno di una funzione e restituire il controllo.

Sรฌ. Gli assistenti basati sull'IA generano cicli for e while a partire da una semplice descrizione, spiegano gli errori, individuano cicli infiniti e bug di tipo off-by-one e suggeriscono opzioni piรน pulite come le list comprehension o enumerate() per l'indicizzazione.

Sรฌ. GitHub Copilot completa automaticamente i cicli for e while, i comandi break, continue ed enumera le righe a partire da un commento o da codice nelle vicinanze. Gli strumenti di intelligenza artificiale di Agentic vanno oltre, eseguendo il refactoring dei cicli o correggendo automaticamente i bug in un intero file.

Riassumi questo post con: