Dunque, eravamo rimasti ai cicli giusto?
In python, il ciclo while si esegue in questo modo:
- Codice:
-
while condizione:
istruzioni
come vedete non c'è(come in c o in autoit) un'identificatore della fine del ciclo( } in c e WEnd in autoit.
Diventa quindi fondamentale la tabulazione.Tutto ciò che scrivete tabulato sotto il while farà parte del while; tutto il resto no.
Ecco un esempio:
- Codice:
-
a = 0
while a<5:
print "a vale: ", a
a += 1
print "fine del ciclo"
come vedete l'ultima riga non è tabulata e quindi verrà eseguita solo una volta.
per il resto niente di nuovo. l'istruzione a += 1 serve per aumentare a di uno ogni volta che riesegue il while. Come potrete dedurre questa istruzione è fondamentale, perchè se mancasse il while si ripeterebbe all'infinito.(finchè a non diventa maggiore o uguale a 5, il che, se non caambiamo il suo valore non avverrà mai)
nell'istruzione print "a vale: ", a la virgola è necessaria. Se la variabile a fosse una stringa non farebbe differenza usare la virgola o l'operatore di concatenamento '+', ma non è possibile concatenare stringhe a interi, e così si usa la virgola.
ora, parlando di cicli come poteva non esserci anche il for?
in questo linguaggio le cose si fanno un po' diverse. ecco come si fa' il for:
- Codice:
-
for unità in portata:
istruzioni
allora, al contrario degli altri linguaggi python usa un metodo differente.
un esempio vi chiarirà le idee.
- Codice:
-
for num in range(1, 6):
print "hello!"
print "fine del ciclo"
l'istruzione for num in range(1, 6) è da tradurre: "per ogni num(numero) nella lista: "1, 2, 3, 4, 5"".
infatti range(1, 6) ritorna un array con tutti i numeri(interi) a partire 1, più piccoli di 6.
non è poi così difficile giusto?
ovviamente l'istruzione break(esci) esiste anche in python.
ecco un esempio:
- Codice:
-
a = 0
while 1 == 1:
if(a!= 6):
print a
a += 1
else:
break
indovinate un po' cosa vi esce fuori?
bene ora passiamo algli array
ecco come si inizializza un array in python:
variabile = [elemento1, elemento2, elemento3, ...]
l'array infatti un'insieme di elementi (variabili o stringhe) riuniti in una sola variabile.
si egisce sugli array in questo modo:
array[indirizzo]
infatti ogni elemento ha un'indirizzo all'interno dell'array.
ecco un'esempio:
- Codice:
-
a = [5, "ciao", 6, "hello!"]
print a
print a[0]
a[1] = "salve"
print a[1]
come vedete possiamo agire sugli elementi degli array esattamente come se fossero delle variabili, bisogna solo richiamarle come array[indirizzo].
ecco altre notizie sugli array in python
array.append("hello world") appende alla fine dell'array la stringa "hello world"
len(array) ritorna il numero degli elementi nell'array
array.index(elemento) ritorna la posizione dell'elemento nell'array
del array[indirizzo] cancella dall'array l'elemento contenuto all'indirizzo
ok, come ultimo argomento vediamo come definire dele funzioni:
- Codice:
-
def funzione(argomento1, argomento2, ...):
istruzioni
naturalmente il numero di argomenti è variabile e puo eseere anche 0
dopo averle definite le funzioni si richiamano durante il programma in questo modo:
funzione(argomento1, ...)
ecco una semplice funzione che raddoppia una variabile e la stampa a schermo:
- Codice:
-
def dopp(a):
a *= 2
print a
dopp(5)
dopp("hello! ")
naturalmente una funzione può anche avere un valore di ritorno cioè il valore che sarà considerado se scrivo a schermo o opero con un'altra variabile la funzione
esempio:
- Codice:
-
def eleva(a, b):
return a**b
print eleva(5, 3)
print (eleva(5, 3) * 2)
come potete notare il valore di ritorno è dato dall' istruzione return; e si agisce con la funzione proprio come se fosse una variabile.
spero di essere stato chiaro. Ora potete esercitarvi a piacimento(magari provando a riscrivere dei vostri altri programmi (fatti con altri linguaggi) in python.
Aspetto i vostri i vostri programmi!!!