Tronca Float in Python

Syed Moiz Haider 25 aprile 2021
  1. Troncare un Float in Python usando la funzione round()
  2. Troncare un float in Python usando la funzione int()
  3. Troncare un float in Python usando la funzione str()
Tronca Float in Python

Questo tutorial spiegherà vari metodi per troncare un float in Python. Il troncamento float viene utilizzato per semplificare il calcolo. Possiamo troncare un float rilasciando le cifre rimanenti o arrotondandole. Esamineremo entrambi i metodi in questo tutorial.

Troncare un Float in Python usando la funzione round()

La funzione round(number, n) prende un numero come input e lo arrotonda a n posizioni decimali.

Nel caso in cui vogliamo troncare il float arrotondandolo, possiamo farlo usando la funzione round() in Python. Il codice di esempio sotto mostra come usare la funzione round() per troncare un float.

print(round(1923334567124, 4))
print(round(2345.1252342, 4))
print(round(192.67, 4))

Produzione:

1923334567124
2345.1252
192.67

Troncare un float in Python usando la funzione int()

Supponiamo di voler troncare un float semplicemente trascinando le cifre rimanenti dopo n cifre decimali. Possiamo farlo moltiplicando prima il float con il 10**n dove n il numero di cifre del float che vogliamo mantenere dopo il decimale. Quindi, convertilo in un numero intero e dividerlo con lo stesso valore 10**n. Possiamo quindi riconvertirlo in un float.

Il codice di esempio sotto mostra come troncare un float rilasciando la cifra rimanente usando la funzione int() in Python.

def truncate(num, n):
    integer = int(num * (10 ** n)) / (10 ** n)
    return float(integer)


print(truncate(1923334567124, 4))
print(truncate(2345.1252342, 4))
print(truncate(192.67, 4))

Produzione:

1923334567124.0
2345.1252
192.6699

Troncare un float in Python usando la funzione str()

Possiamo anche troncare un float trascinando le cifre rimanenti dopo n cifre decimali convertendolo prima in una stringa.

Una volta convertito il float in una stringa, possiamo cercare il punto decimale . nella stringa; se esiste, possiamo mantenere le n cifre dopo di essa o completare il float se ha meno di n cifre dopo il punto decimale.

Il codice di esempio sotto mostra come usare la funzione str() per troncare un float in Python.

def truncate(num, n):
    temp = str(num)
    for x in range(len(temp)):
        if temp[x] == ".":
            try:
                return float(temp[: x + n + 1])
            except:
                return float(temp)
    return float(temp)


print(truncate(1923334567124, 4))
print(truncate(2345.1252342, 4))
print(truncate(192.67, 4))

Produzione:

1923334567124.0
2345.1252
192.67
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 Float