Arrotondare un numero in Python

Syed Moiz Haider 30 gennaio 2023
  1. Usa la funzione math.ceil() per arrotondare un numero in Python 2.x
  2. Usa l’aritmetica semplice per arrotondare un numero in Python
  3. Usa l’operatore di divisione del piano per arrotondare un numero in Python
  4. Usa il metodo numpy.ceil() per arrotondare un numero in Python
Arrotondare un numero in Python

Questo tutorial spiega diversi metodi per spiegare il concetto di arrotondamento per eccesso di un numero. Esistono vari modi per arrotondare un numero nel modo corretto. Ad esempio, un numero può essere arrotondato usando il modulo math fornito da Python, usando il modulo NumPy e così via. Il tutorial spiegherà questi diversi metodi utilizzando frammenti di codice di esempio.

Usa la funzione math.ceil() per arrotondare un numero in Python 2.x

Se stai usando la versione Python 2.x, puoi usare la funzione math.ceil() per arrotondare correttamente un numero. La funzione ceil() è fornita dalla libreria math di Python. Quindi dobbiamo prima importare la libreria math. La funzione ceil prende il numero che deve essere arrotondato. Può prendere un’espressione e arrotondare il numero risultante in base ai risultati.

Tuttavia, va notato che in Python 2.x, int/int produce int e int/float risulta in un float. Quindi dobbiamo dare uno dei valori in float alla funzione ceil per ottenere risultati accurati. Se entrambi i valori di un’espressione nella funzione ceil sono interi, possono produrre risultati errati.

Di seguito viene fornito un codice di esempio per illustrare il concetto di come utilizzare math.ceil() per arrotondare un numero in Python 2.x.

import math

print(math.ceil(27 / 4))
print(math.ceil(27.0 / 4))

Produzione:

6
7

Usa l’aritmetica semplice per arrotondare un numero in Python

Un numero può anche essere arrotondato usando una semplice aritmetica in Python. Questo metodo è applicabile a tutte le versioni di Python. Converte la prima espressione in un tipo di dati intero e aggiunge il valore 0 o 1 in base al risultato di un’altra espressione. Un’altra espressione trova il modulo del numero con lo stesso denominatore e controlla se è maggiore di 0 o meno. Se il resto è maggiore di 0, aggiunge uno alla prima espressione e, se è falso, aggiunge 0 alla prima espressione.

Di seguito viene fornito un codice di esempio per spiegare come utilizzare la semplice aritmetica per arrotondare un numero in Python senza importare la libreria math.

n = 22
div = 5
print(int(n / div) + (n % div > 0))

Produzione:

5

Usa l’operatore di divisione del piano per arrotondare un numero in Python

Il simbolo per l’operatore di divisione del piano è //. Funziona allo stesso modo di un semplice operatore di divisione, /, ma arrotonda anche il numero per difetto. Quindi, di solito è usato per arrotondare il numero in Python. Tuttavia, possiamo modificarne l’uso per arrotondare anche un numero. Possiamo farlo negando la risposta dividendo i numeri negativi. Risparmierà il costo di qualsiasi importazione o utilizzo di float e qualsiasi altra condizione. Funziona solo con i numeri interi.

Di seguito viene fornito un codice di esempio per elaborare come utilizzare l’operatore di divisione del piano per arrotondare un numero in Python.

n = 22
div = 5
answer = -(-n // div)
print(answer)

Produzione:

5

Allo stesso modo, possiamo arrotondare un numero aggiungendo il denominatore al numeratore e sottraendo 1 da esso. Quindi l’intera espressione sarà divisa in due dal denominatore. È un metodo semplice che non coinvolge anche punti mobili e moduli esterni. Di seguito viene fornito un codice di esempio di questo metodo.

numerator = 22
denominator = 5
answer = (numerator + denominator - 1) // denominator
print(answer)

Produzione:

5

Usa il metodo numpy.ceil() per arrotondare un numero in Python

Un altro metodo per arrotondare un numero è usare il metodo numpy.ceil(). Per prima cosa, dobbiamo importare il modulo NumPy nello script e poi usare il metodo ceil() per arrotondare un numero. Il tipo di ritorno della funzione ceil() è float, quindi anche se l’espressione è in numeri interi, l’output sarà in float. È possibile eseguire il cast esplicito dell’output su un tipo di dati intero eseguendo il cast esplicito come numero intero.

Di seguito viene fornito un codice di esempio di questo metodo per arrotondare un numero in Python.

import numpy as nmp

n = 22
div = 5
answer = n / div
print(nmp.ceil(answer))
print(int(nmp.ceil(answer)))

Produzione:

5.0
5
Syed Moiz Haider avatar Syed Moiz Haider avatar

Syed Moiz is an experienced and versatile technical content creator. He is a computer scientist by profession. Having a sound grip on technical areas of programming languages, he is actively contributing to solving programming problems and training fledglings.

LinkedIn

Articolo correlato - Python Number