Notazione scientifica in Python

Manav Narula 30 gennaio 2023
  1. Usa la funzione format() per rappresentare i valori nella notazione scientifica in Python
  2. Usa le fstrings per rappresentare i valori nella notazione scientifica in Python
  3. Usa la funzione numpy.format_float_scientific() per rappresentare i valori nella notazione scientifica
Notazione scientifica in Python

La notazione scientifica viene utilizzata per rappresentare numeri molto grandi o piccoli in modo compatto e comprensibile. Tale notazione viene utilizzata anche nella programmazione; ad esempio, 6000000 può essere rappresentato come 6E+6. Allo stesso modo, 0.000006 può essere rappresentato come 6E-6.

In questo tutorial, discuteremo come utilizzare tali notazioni scientifiche in Python.

Usa la funzione format() per rappresentare i valori nella notazione scientifica in Python

La funzione di formattazione viene utilizzata per formattare le stringhe in un formato specifico. Possiamo usare questa funzione per convertire valori float grandi o piccoli nel rispettivo formato esponenziale come mostrato di seguito:

no1 = float(5800000.00000)
no2 = float(0.0000058)
print(format(no1, ".1E"))
print(format(no2, ".1E"))

Produzione:

5.8E+06
5.8E-06

Qui .1E è il modello di formattazione specificato. E indica la notazione esponenziale per stampare il valore in notazione scientifica, e .1 specifica che deve esserci una cifra dopo il decimale.

Usa le fstrings per rappresentare i valori nella notazione scientifica in Python

In Python 3.6 e versioni successive, possiamo usare fstrings per formattare le stringhe. Questo metodo è considerato più preciso e meno soggetto a errori. Migliora la leggibilità del codice rispetto alla tradizionale funzione format(). fstrings può aiutare nella rappresentazione, come mostrato di seguito.

no1 = float(5800000.00000)
no2 = float(0.0000058)
print(f"{no1:.1E}")
print(f"{no2:.1E}")

Produzione:

5.8E+06
5.8E-06

Si noti che il modello di formato è lo stesso del metodo sopra.

Usa la funzione numpy.format_float_scientific() per rappresentare i valori nella notazione scientifica

Il modulo NumPy in Python ha una funzione format_float_scientific() che può essere usata per formattare un valore fluttuante nella sua notazione scientifica.

Possiamo usare il parametro precision per specificare le cifre decimali totali e exp_digits per dire quante cifre sono necessarie nella notazione esponenziale. Altri parametri disponibili sono sign, unique e trim, che offrono maggiori personalizzazioni.

Il risultato finale restituito da questa funzione è una stringa.

import numpy as np

no1 = float(5800000.00000)
no2 = float(0.0000058)

print(np.format_float_scientific(no1, precision=1, exp_digits=3))
print(np.format_float_scientific(no2, precision=2, exp_digits=3))

Produzione:

5.8e+006
5.8e-006
Autore: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Articolo correlato - Python String