Indovinelli con Scratch

In questa lezione realizzemo un gioco con gli indovinelli con Scratch.
Proporremo 4 semplici indovinelli:
1) Giro curioso nel bosco fitto e frondoso. Mi arrotolo in palla, sono piccolo e gioioso.
2) Mi nutro di insetti nell’oscurità, Un piccolo mammifero nella mia verità.
3) Nella notte mi senti cantare, Con occhi grandi posso guardare.
4) Faccio il sonnellino durante la lunga stagione. Amo miele e pesce, sono un buon pescatore!

Per individuare la risposta corretta, occorre trascinare ciascun animale sulla macchina. Se la macchina parte con l’animale vuol dire che la risposta è corretta, altrimenti la macchina cambia colore e l’animale ritorna in posizione.

Ecco una possibile implementazione del gioco indovinelli con Scratch:

Python for

Python for

Il ciclo for in Python serve a compiere delle iterazioni un numero prefissato di volte.

In questa lezione spiegheremo il funzionamento del ciclo ed introdurremo la funzione range().

Nella scorsa lezione abbiamo studiato il ciclo while, che consente di ripetere una o più istruzioni in base al valore di verità della condizione specificata. A differenza del while, il ciclo for itera in base ad un numero di volte prefissato, ovvero un numero definito di volte.

Sintassi del ciclo for in Python e la variabile range

La sintassi del ciclo for è, dunque, la seguente:

for variabile in range():

istruzioni

Dove:

– for e in sono le parole chiavi.

– variabile è il nome della variabile che sceglierete a piacere seguendo le regole spiegate nelle precedenti lezioni.

– range() è una funzione che può avere come argomenti:

– un numero intero che indica quante volte la ripetizione è eseguita. Ad esempio se mettiamo 3 la ripetizione viene ripetuta tre volte da 0 a 2.

due numeri che indicano il valore di inizio e di fine (escluso) che assume il contatore.

tre numeri dove i primi due indicano il valore di inizio e di fine del contatore mentre il terzo indica l’incremento che il contatore assume ad ogni ripetizione.

Facciamo subito degli esempi pratici al fine di comprendere meglio il funzionamento di questo ciclo.


Primo esempio di ciclo for in Python

for i in range(3):

print(i)

Questo script produce come output i valori 0, 1 e 2.

Dunque, inizialmente i vale zero e dopo, a fine ciclo, arriverà al valore 2.


Secondo esempio di ciclo for in Python

for i in range(1,3):

print(i)

In questo caso specifico l’indice parte da 1 e termina a 2. Dunque questo script produce come output i valori 1 e 2.


Terzo esempio di ciclo for in Python

for i in range(1,9,2): #2 è lo step – indica il passo di avanzamento

print(i)

In questo caso l’indice parte da 1 e cambia a passi di 2 fino ad arrivare a 9 escluso. Quindi, si avrà come output: 1, 3, 5, 7.

Chiaramente si può anche visualizzare in ordine decrescente, come ad esempio:

for i in range(9,1,-2):

print(i)

Visualizzerà i numeri: 9, 7, 5, 3.


Quarto esempio di ciclo for in Python

La funzione range() può essere personalizzata come si preferisce e si possono ottenere ad esempio i numeri in senso decrescente.

for i in range(10,0,-1): 

print(i)

L’output prodotto è il seguente: 10, 9, 8, 7, 6, 5, 4, 3, 2, 1


Parola chiave end

Nella funzione print si può aggiungere anche la parola chiave end per impedire il ritorno a capo nell’output.

for i in range(10,0,-1):

print(i, end=‘ ‘)

In questo caso si ha uno spazio vuoto tra un numero ed un altro.

Si può inserire anche un carattere separatore come ad esempio la virgola o il trattino: print(i, end=’ – ‘) .

Conclusioni

In questa lezione abbiamo spiegato la funzionalità del ciclo for in python, nelle prossime lezioni proporrò tantissimi esercizi in cui tale ciclo verrà applicato.

Alcuni link utili

Indice tutorial sul linguaggio Python

1 – Introduzione al linguaggio Python

2 – Le variabili

3 – Operatori aritmetici e di assegnazione

4 – Stringhe

5 – Casting

6 – Input e print

7 – Primi esercizi in Python

8 – Errori in Python

9 – Script Python

10 – Scambio di variabili

11 – Modulo math