>> Tecnologia elettronica >  >> Casa intelligente >> Vita smart

La funzione per l'intero più vicino in Python

Forse a testimonianza della sua reputazione di linguaggio potente e flessibile, Python include molte librerie interne per automatizzare attività computazionali e matematiche comuni o complesse. La "libreria math" contiene molti metodi per arrotondamenti tipici. Tuttavia, l'arrotondamento dei decimali in Python non arrotonda a un intero, ma a un decimale intero. La conversione a interi richiede l'uso della libreria math di Python insieme ad alcune librerie di conversione integrate.

Python e arrotondamento

La libreria math di Python offre un pacchetto di metodi utili per arrotondare numeri decimali a numeri interi. Puoi arrotondare un numero nel modo tradizionale (per difetto se la parte frazionaria è ≤0,4, per eccesso se ≥0,5) usando il metodo "round()". L'esempio seguente mostra come arrotondare numeri decimali con il metodo round:

round(3.14159)  # restituisce 3
round(2.71828)  # restituisce 3

Metodi floor e ceil

Come parte della libreria math, i metodi "floor()" e "ceil()" forniscono un modo unico per arrotondare i decimali, utile in certi calcoli. Il metodo floor arrotonda per difetto all'intero più vicino verso meno infinito (indipendentemente dal valore decimale), mentre ceil arrotonda per eccesso verso più infinito. Esempio:

import math
math.floor(3.9)   # 3
math.ceil(3.1)    # 4

Arrotondamento e interi

Le operazioni di arrotondamento illustrate mostrano come funzionano queste funzioni, ma anche un effetto collaterale: nelle versioni di Python precedenti alla 3.0, i decimali arrotondati non diventano interi, ma rimangono decimali. A causa della rappresentazione dei decimali nell'architettura dei computer, questo potrebbe causare problemi in calcoli ad alta precisione dove servono interi. Puoi convertire un numero floating-point in intero usando il metodo "int()", ad esempio:

int(math.floor(3.9))  # 3
int(math.ceil(3.1))   # 4

Metodo di esempio

Usando queste conoscenze, puoi sviluppare un metodo per arrotondare decimali a interi facilmente. Gli esempi seguenti mostrano brevi metodi che determinano floor e ceil di un numero come intero, e un altro che arrotonda a un numero di decimali specificato dall'utente (o a un intero):

def round_to_int(x):
    return int(round(x))

def floor_int(x):
    return int(math.floor(x))

def ceil_int(x):
    return int(math.ceil(x))
  1. La funzione dell'obiettivo fotografico
  2. Qual è la funzione della RAM in un computer
  3. Sulla funzione di una scheda audio
  4. Come abilitare il tasto F Lock
  5. Come aggiungere elementi a una lista in Python
  6. Come determinare la lunghezza del dizionario in Python