Tipi: Numeri
I numeri possono essere interi int
o decimali float
, i decimali vengono rappresentati con il punto come separazione tra la parte intera e quella decimale.
Python 3 ha anche altri tipi numerici, come le frazione e i numeri complessi, ma in questa breve introduzione non verranno trattati.
>>> type(3)
<class 'int'>
>>> type(3.0)
<class 'float'>
Le operazione matematiche di base si fanno come ci si aspetta
>>> 1 + 1
2
>>> 8 - 1
7
>>> 10 * 2
20
>>> 35 / 5
7.0
Il risultato di una divisione è sempre un numero decimale float
>>> 10.0 / 3
3.3333333333333335
L’operatore //
esegue una divisione tra interi restituendo un risultato intero.
I valori della divisione possono essere sia interi che decimali.
Il risultato, nonostante possa essere sia di tipo intero che decimale, sarà sempre arrotondato ad un intero.
>>> 5 // 3
1
>>> 5.0 // 3.0
1.0
I valori della divisione tra interi possono essere sia positivi che negativi. È importante però sapere che nel caso di numeri negativi il risultato sarà arrotondato per eccesso.
>>> 10 / 1.45
6.8965517241379315
>>> 10 // 1.45
6.0
>>> 10 // -1.45
-7.0
L’operatore %
restituisce il resto (modulo) di una divisione
>>> 7 % 3
1
L’operatore **
esegue un elevamento a potenza (x alla y-esima potenza)
>>> 2**3
8
Le parentesi, come in matematica, indicano la precedenza nell’elaborazione dei calcoli
>>> (1 + 3) * 2
8
>>> 1 + (3 * 2)
7
È possbile convertire una stringa in numero tramite le funzioni cast int()
e float()
.
Python genererà un’eccezione nel caso si passi alle funzioni cast una stringa non convertibile in numero.
>>> a="323"
>>> type(a)
<class 'str'>
>>> a=int(a)
>>> a
323
>>> type(a)
<class 'int'>
>>> a="pippo"
>>> int(a)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: 'pippo'
This content is a derivative of “Learn X in Y minutes” by adambard, used under a CC BY-SA 3.0 license.