Terza parte del corso python
Andiamo avanti con la pratica. Vediamo ora come mescolare le tipologie di dato, ovvero parleremo di CONCATENAZIONI e dei DATATYPES.
Adesso stampiamo la variabile "variabilecontesto"
Che non è però il risultato sperato.
Per inserire una variabile dentro una stringa si testo bisogna concatenarle fra di loro,
ovvero "spezzarle" per far capire all'interprete dove si interrompe la stringa,
per far inserire una variabile presa dall'esterno dalla stringa stessa,
e poi andare avanti con il testo.
Come fare quindi ?
Ci sono diversi modi, vediamo:
Adesso usiamo la variabile eta come testo:
Quindi mettendo il numero fra apici ' ' vuol dire indicare il suo datatypes come una stringa, ovvero testo. Quindi a questo punto per python il 3 dentro la variabile non è più un numero, ma un testo.
E un testo * per 3 è un testo che va ripetuto tre volte, quindi è normale avere 333 come output.
Altro esempio, più chiaro adesso:
Semplice, no? :)
Alla prossima lezione di python, a presto!
Andiamo avanti con la pratica. Vediamo ora come mescolare le tipologie di dato, ovvero parleremo di CONCATENAZIONI e dei DATATYPES.
CONCATENAZIONI
Vediamo un esempio (sbagliato):eta = 3 variabile_con_testo = 'Ciao io ho eta anni'
Adesso stampiamo la variabile "variabilecontesto"
print(variabile_con_testo) >>> Ciao io ho eta anni
Che non è però il risultato sperato.
Per inserire una variabile dentro una stringa si testo bisogna concatenarle fra di loro,
ovvero "spezzarle" per far capire all'interprete dove si interrompe la stringa,
per far inserire una variabile presa dall'esterno dalla stringa stessa,
e poi andare avanti con il testo.
Come fare quindi ?
Ci sono diversi modi, vediamo:
eta = 3 variabile_con_testo = 'Ciao io ho '+eta+' anni' print(variabile_con_testo) >>> TypeError: must be str, not int
Come vedete solamente cosi da errore..perchè?
perchè la variabile eta è un numero, mentre la variabile_con_testo è una stringa di testo,
e non si possono "mescolare", vannno prima "trasformate". vediamo come.
Si può fare in vari modi:
eta = 3 eta = str(eta) variabile_con_testo = 'Ciao io ho '+eta+' anni' print(variabile_con_testo) >>> Ciao io ho 3 anni
Oppure:
eta = 3 variabile_con_testo = 'Ciao io ho '+str(eta)+' anni' print(variabile_con_testo) >>> Ciao io ho 3 anni
e restituiscono entrambe il risultato corretto.
Cosa abbiamo fatto?
In pratica abbiamo specificato che il valore numero dentro un testo,
va trasformato non più in numero ma in testo.
Perché python ce lo richiede?
Per farvelo capire, la cosa più semplice e veloce è un esempio. Vediamo due casi simili ma molto diversi su come ragione python:
DATATYPES
Usiamo la variabile eta come numero:
eta = 3 somma = eta*3 print(somma) >>> 9
Adesso usiamo la variabile eta come testo:
eta = '3' somma = eta*3 print(somma) >>> 333
Quindi mettendo il numero fra apici ' ' vuol dire indicare il suo datatypes come una stringa, ovvero testo. Quindi a questo punto per python il 3 dentro la variabile non è più un numero, ma un testo.
E un testo * per 3 è un testo che va ripetuto tre volte, quindi è normale avere 333 come output.
Altro esempio, più chiaro adesso:
eta = 'tre ' somma = eta*3 print(somma) >>> tre tre tre
Semplice, no? :)
Alla prossima lezione di python, a presto!
Commenti
Posta un commento