Tutorial sul Python - Numeri e conversione
- Tipo di dati del numero di Python
- Conversione del tipo di numero del Python
- Numeri Frazionari Python
In questa sezione, imparerete il tipo di dati numerici nella programmazione Python e le operazioni matematiche che potete eseguire su questi numeri. Inoltre, imparerete come convertire da un tipo di dati ad un altro.
Tipo di dati del numero di Python
Il tipo di dati numerici in Python includono:
- Numeri interi
- Numeri a virgola mobile
- Numeri complessi
I numeri interi non hanno alcuna parte frazionaria/decimale.
I numeri a virgola mobile contengono una parte decimale.
I numeri complessi hanno una parte reale e una parte immaginaria. I numeri complessi hanno la forma x + yj
, dove x
è la parte reale e yj
è la parte immaginaria.
La funzione type()
è usata per ottenere il tipo di dati di una variabile o, più in generale, di un oggetto. La funzione isinstance()
è usata per verificare se la variabile appartiene o meno a una particolare classe.
x = 3
print("type of", x, "is", type(x))
x = 3.23
print("type of", x, "is", type(x))
x = 3 + 3j
print("is", x, "a complex number:", isinstance(x, complex))
Risultato:
type of 3 is <class 'int'>
type of 3.23 is <class 'float'>
is (3+3j) a complex number: True
I numeri interi possono essere di qualsiasi lunghezza, ma i numeri a virgola mobile dovrebbero essere solo fino a 15 decimali.
I numeri interi possono anche essere rappresentati in formato binario (base 2), esadecimale (base 16) e ottale (base 8). Questo può essere fatto utilizzando i prefissi. Controllare la tabella sottostante:
Sistema numerico | Prefissi |
---|---|
Binario | 0b o 0B |
Octal | 0o o 0O |
esadecimale | 0x o 0X |
Esemplare:
>>> print(0b110)
6
>>> print(0xFA)
250
>>> print(0o12)
10
Conversione del tipo di numero del Python
Conversione di tipo implicito
Se si aggiunge un numero di tipo float
e un altro numero di tipo int
, il risultato sarà float
. Qui int
viene convertito in float
implicitamente.
>>> 2 + 3.0
5.0
Qui 2 è un numero intero che viene convertito in float implicitamente e si ha 2.0.
Questa conversione di tipo implicito è anche chiamata coercizione.
Conversione di tipo esplicito
Si potrebbe anche fare una conversione esplicita del tipo di dati numerici usando funzioni come int()
, float()
, str()
, ecc.
>>> x = 8
>>> print("Value of x = ", int(x))
Value of x = 8
>>> print("Converted Value of x = ", float(x))
Converted Value of x = 8.0
Se si vuole convertire il valore float
in valore int
, allora la parte decimale sarà troncata.
Numeri Frazionari Python
Un modulo chiamato fractions
è usato per eseguire operazioni che coinvolgono il numero frazionario. Il modulo fractions
potrebbe rappresentare un numero frazionario come numerator/denominator
.
import fractions
print(fractions.Fraction(0.5))
1 / 2
La funzione Fraction
del modulo fractions
convertirà il decimale in frazioni e quindi si potranno eseguire operazioni matematiche su queste frazioni:
print(Fraction(0.5) + Fraction(1.5))
print(Fraction(0.5) * Fraction(1.5))
print(Fraction(0.5) / Fraction(1.5))
Risultato:
2
3 / 4
1 / 3
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook