Ora proviamo un programma un po' più complicato:
ecco l'output del programma:print "Halt!" s = raw_input("Who Goes there? ") print "You may pass,", s
Ovviamente quando proverete anche voi l'esecuzione il vostro output sarà differente grazie all'espressione raw_input. Avviando il programma (perché lo state provando vero?) avrete notato che richiede l'inserimento del vostro nome per poi premere 'Enter' e continuare l'esecuzione; a quel punto viene visualizzato un messaggio seguito dal vostro nome. Questo è un esempio di input: il programma viene eseguito fino a un certo punto, dopodiché attende un input di dati dall'utente.Halt! Who Goes there? Josh You may pass, Josh
Certamente un input sarebbe inutile se non avessimo nessun posto dove mettere l'informazione ottenuta, ecco quindi che entrano in gioco le variabili. Nel programma precedente s è, appunto, una variabile. Le variabili sono come delle scatole in cui si possono immagazzinare dati. Ecco un programma che ne spiega l'utilizzo:
e questo è l'output:a = 123.4 b23 = 'Spam' first_name = "Bill" b = 432 c = a + b print "a + b is", c print "first_name is", first_name print "Sorted Parts, After Midnight or",b23
Come ho detto: le variabili immagazzinano dati. Nel programma qui sopra ad esempio sono a, b23, first_name, b e c. Le due tipologie base di variabili sono stringhe e numeri. Le stringhe sono sequenze di lettere, numeri e altri caratteri: nell'esempio b23 e first_name sono variabili contenenti stringhe. 'Spam', 'Bill', 'a + b is ' e 'first_name' sono stringhe: come potete notare sono sempre racchiuse da " ' " o " " ". Gli altri tipi di variabili presenti sono numeri.a + b is 555.4 first_name is Bill Sorted Parts, After Midnight or Spam
Ora, abbiamo queste scatole chiamate variabili e anche dati da metterci dentro. Il computer vedrà una linea come 'first_name = Bill' che leggerà come - metti la stringa 'Bill' nella scatola (o variabile) 'first_name'. Più tardi vedrà l'espressione 'c = a + b' che leggerà come "metti a+b o 123.4 + 432 all'interno della variabile c".
Ecco un'altro esempio sull'utilizzo delle variabili:
E di conseguenza ecco l'output:a = 1 print a a = a + 1 print a a = a * 2 print a
Anche se in tutti i casi sopraelencati la variabile ha lo stesso nome il computer la rilegge ogni volta. Prima trova i dati da immagazzinare e poi trova dove immagazzinarli.1 2 4
Un'ultimo esempio prima di chiudere il capitolo:
Ecco l'output che ho ottenuto:num = input("Type in a Number: ") str = raw_input("Type in a String: ") print "num =", num print "num is a ",type(num) print "num * 2 =",num*2 print "str =", str print "str is a ",type(str) print "str * 2 =",str*2
Osserva il modo in cui ho ottenuto dall'utente le due varaibili: input per la variabile numerica e raw_input per la variabile stringa. Quando volete che l'utente inserisca un numero o una stringa utilizzate, rispettivamente, input o stringa raw_input.Type in a Number: 12.34 Type in a String: Hello num = 12.34 num is a <type 'float'> num * 2 = 24.68 str = Hello str is a <type 'string'> str * 2 = HelloHello
La seconda parte del programma utilizza la funzione type che vi informa sul tipo di variabile: le varibili numeriche sono di tipo int (numero intero) o float (numero decimale), le stringhe sono di tipo string. Interi e decimali possono essere utilizzati per operazioni matematiche, le stringhe no. Tuttavia quando una stringa viene moltiplicata per un intero vengono aggiunte alla stringa copie di se stessa: ad es. str * 2 = HelloHello