In questo articolo imparerai a controllare l'esecuzione di un ciclo utilizzando istruzioni di controllo del ciclo come break e continue.
La programmazione Python offre due tipi di loop, il ciclo for e il ciclo while. Usando questi cicli insieme alle istruzioni di controllo del ciclo come break e continue, possiamo creare varie forme di ciclo.
Il ciclo infinito
Possiamo creare un ciclo infinito usando l'istruzione while. Se la condizione del ciclo while è sempre True
, otteniamo un ciclo infinito.
Esempio # 1: ciclo infinito usando while
# An example of infinite loop # press Ctrl + c to exit from the loop while True: num = int(input("Enter an integer: ")) print("The double of",num,"is",2 * num)
Produzione
Immettere un numero intero: 3 Il doppio di 3 è 6 Immettere un numero intero: 5 Il doppio di 5 è 10 Immettere un numero intero: 6 Il doppio di 6 è 12 Immettere un numero intero: Traceback (la chiamata più recente per ultima):
Loop con condizione in alto
Questo è un normale ciclo while senza istruzioni break. La condizione del ciclo while è all'inizio e il ciclo termina quando questa condizione è False
.
Diagramma di flusso del ciclo con condizione in alto
Esempio # 2: loop con condizione in alto
# Program to illustrate a loop with the condition at the top # Try different numbers n = 10 # Uncomment to get user input #n = int(input("Enter n: ")) # initialize sum and counter sum = 0 i = 1 while i <= n: sum = sum + i i = i+1 # update counter # print the sum print("The sum is",sum)
Quando esegui il programma, l'output sarà:
La somma è 55
Loop con condizione nel mezzo
Questo tipo di ciclo può essere implementato utilizzando un ciclo infinito insieme a un'interruzione condizionale tra il corpo del ciclo.
Diagramma di flusso del ciclo con condizione nel mezzo
Esempio # 3: loop con la condizione nel mezzo
# Program to illustrate a loop with condition in the middle. # Take input from the user untill a vowel is entered vowels = "aeiouAEIOU" # infinite loop while True: v = input("Enter a vowel: ") # condition in the middle if v in vowels: break print("That is not a vowel. Try again!") print("Thank you!")
Produzione
Immettere una vocale: r Questa non è una vocale. Riprova! Inserisci una vocale: 6 Questa non è una vocale. Riprova! Inserisci una vocale:, Questa non è una vocale. Riprova! Immettere una vocale: u Grazie!
Loop con condizione in basso
Questo tipo di ciclo garantisce che il corpo del ciclo venga eseguito almeno una volta. Può essere implementato utilizzando un ciclo infinito insieme a un'interruzione condizionale alla fine. Questo è simile al ciclo do … while in C.
Diagramma di flusso del loop con condizione in basso
Esempio # 4: loop con condizione in basso
# Python program to illustrate a loop with condition at the bottom # Roll a dice untill user chooses to exit # import random module import random while True: input("Press enter to roll the dice") # get a number between 1 to 6 num = random.randint(1,6) print("You got",num) option = input("Roll again?(y/n) ") # condition if option == 'n': break
Produzione
Premi Invio per lanciare i dadi Hai ottenuto 1 tiro di nuovo? (S / n) y Premi Invio per lanciare i dadi Hai ottenuto 5 lanci di nuovo? (S / n) n