Abbiamo trattato i tipi di dati di base, i tipi di dati avanzati e le istruzioni condizionali in Python nei nostri blog precedenti. In questo blog, verranno trattati i cicli. Se sei nuovo in Python, ti preghiamo di iniziare dal primo blog per avere una migliore comprensione di questo argomento.
I cicli vengono utilizzati quando c’è bisogno di eseguire un compito più di una volta. Ad esempio, stampare numeri da 1 a 100 o un esempio migliore sarebbe sommare tutti gli elementi in una lista o in un array. A volte c’è bisogno di scrivere più di 1 ciclo o un ciclo all’interno di un ciclo. In Python scrivere questi cicli è molto semplice e anche la sintassi è facile da capire. Come abbiamo visto, in Python non è necessario dichiarare una variabile prima di usarla. Il ciclo di base inizia con il ciclo for. Comprendiamo il ciclo “for”.
In un ciclo for, abbiamo tre cose che devono essere menzionate. La prima è il valore iniziale della variabile su cui deve essere eseguita l’iterazione, la condizione di arresto e l’ultima è di quanti passi si desidera incrementare o decrementare l’iteratore.
Vediamo la sintassi di un ciclo “for”:
# Ciclo For for var in range(10): print(var) for var in range(0,10,1): print(var)
Nell’illustrazione del codice sopra, possiamo vedere che i cicli for danno lo stesso risultato. La sintassi alla fine dove abbiamo fornito la funzione range ha tre argomenti di cui abbiamo discusso nel paragrafo precedente. Nell’esempio sopra, il range ha 0,10,1 in cui 0 è il valore iniziale dell’iteratore, 10 è il valore finale ma il range in realtà itera fino a 10-1 che è 9 e 1 è l’incremento dell’iteratore ogni volta che il ciclo viene eseguito.
Facciamo girare il programma sopra
Output: 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9
Come possiamo vedere dall’illustrazione dell’output, sta stampando i numeri da 0 a 9.
In una lista abbiamo una collezione di elementi e di seguito è illustrato come utilizzare i cicli for per iterare attraverso una lista.
X=[1,2,3,4,5,6] for i in X: print(i)
Output: Questo stamperà tutti gli elementi nella lista. 1,2,3,4,5,6
Per includere anche l’indice durante la stampa, il codice è illustrato di seguito.
X=[1,2,3,4,5,6] for i in range(len(X)): print(i,X[i]) [/code> <p>Questo stamperà sia l'indice che il valore nella lista.</p> <p>C'è un modo semplice per ottenere l'indice e il valore usando la funzione enumerate. L'uso della funzione enumerate è illustrato di seguito.</p> [code lang="js"] X=[1,2,3,4,5,6] for i,value in enumerate(X): print(i,value)
Output: 0,1 1,2 2,3 3,4 4,5 5,6
Iterare un insieme è simile all’iterazione della lista usando il ciclo for. Un esempio è illustrato di seguito.
X={1,2,3,4,5,6} for i,value in enumerate(X): print(i,value) [/code> Output: 0,1 1,2 2,3 3,4 4,5 5,6 [/code>Iterare una tupla è simile all’iterazione della lista usando il ciclo for. Un esempio è illustrato di seguito.
X=(1,2,3,4,5,6) for i,value in enumerate(X): print(i,value) [/code> Output: 0,1 1,2 2,3 3,4 4,5 5,6 [/code>Iterare un dizionario è diverso dagli altri tipi di dati, poiché il dizionario contiene coppie chiave-valore. Pertanto, per ottenere solo le chiavi utilizziamo dictionaryname.keys() e per i valori utilizziamo dictionaryname.values(). Un esempio è illustrato di seguito.
X={“1”:1,”2”:2} for key in X.keys(): print(key) for value in X.values(): print(value) for key,value in X.items(): print(key,value) [/code> Output: 1 2 1 2 1,1 2,2 [/code>I cicli annidati sono utili quando si costruisce una soluzione di forza bruta a un dato problema. Aumentano la complessità temporale del programma e diminuiscono la leggibilità.
a = [1, 2] b = [10, 13] # ottenere numeri il cui prodotto è 13 for i in a: for j in b: if i*j == 13: print(i, j) [/code>Nell’blocco di codice sopra, abbiamo definito 2 liste e ogni lista ha una certa collezione di numeri. L’obiettivo principale era trovare quali numeri avrebbero prodotto 13 da entrambe le liste e anche stampare quei numeri. A tale scopo, abbiamo dovuto iterare attraverso 2 liste, quindi sono stati utilizzati 2 cicli for.
Modo alternativo:
C’è una funzione in itertools chiamata product. Questo aiuta a mantenere i cicli for annidati, se presenti nel programma, leggibili. L’esempio è illustrato di seguito.
from itertools import product
a = [1, 2]
b = [10, 13]
# ottenere numeri il cui prodotto è 13
for i, j in product(a, b):
if(i*j == 13): print(i, j) [/code>Fino ad ora, abbiamo solo stampato l’output ma non abbiamo mai fornito alcun input al nostro programma. In Python input() viene utilizzato per fornire input al programma in Python. L’esempio è illustrato di seguito. Il ciclo while viene utilizzato quando si desidera eseguire un programma se la condizione è soddisfatta. Gli esempi di ciclo while sono illustrati di seguito.
Stampare 0-9 usando il ciclo while:
i = 0
while(i < 10): print(i) i += 1 [/code>Come puoi vedere, la sintassi è while seguita da una condizione, e all’interno del ciclo incrementiamo l’iteratore secondo il numero desiderato.
Output: 0 1 2 3 4 5 6 7 8 9 [/code>
In questo blog, abbiamo trattato alcune basi delle istruzioni di ciclo in python, i temi successivi sulle funzioni saranno trattati nel prossimo blog. La domanda da risolvere è data di seguito.
Potresti anche essere interessato al nostro Corso di JavaScript da Principiante ad Avanzato.
Esperto di JavaScript e istruttore che forma i dipartimenti IT. Il suo obiettivo principale è aumentare la produttività del team insegnando agli altri come cooperare efficacemente durante la programmazione.
Quali sono i vantaggi dei social media? Possono portare traffico mirato al sito web della…
Se stai vendendo sul mercato più popolare del mondo, è certo che ti preoccuperai dei…
La misura dell'efficacia di un marketer è il numero di conversioni, ovvero le azioni desiderate…
Quando si tratta di intelligenza artificiale nella produzione musicale, è migliore nella co-creazione e, in…
Nell'articolo di oggi, tratteremo il tema della cooperazione tra il Product Owner e lo Scrum…
Ogni leader ha obiettivi come costruire un team che fornisca risultati adeguatamente elevati, raggiungere gli…