Convirtiendo un flotar valor a un En t esta hecho por Conversión de tipo , que es un método explícito para convertir un operando a un tipo específico. Sin embargo, cabe señalar que este tipo de conversión puede tender a generar pérdidas (pérdida de datos). Convertir un valor int como 2 a punto flotante dará como resultado 2.0 , estos tipos de conversión son seguros ya que no habría pérdida de datos, pero la conversión 3.4 a un valor int resultará en 3 lo que lleva a una conversión con pérdidas.
Ejemplos:
Input: 3.3 Output: 3 Input: 5.99 Output: 5>
Método 1: Conversión usando En t() :
Para convertir un valor flotante a int utilizamos el int incorporado () función, esta función recorta los valores después del punto decimal y devuelve solo la parte entera/número entero.
Sintaxis: entero(x)
Devolver: valor entero
Ejemplo 1: Número de tipo flotar se convierte en un resultado de tipo En t .
Python3
# conversion from float to int> num>=> 9.3> # printing data type of 'num'> print>(>'type:'>,> >type>(num).__name__)> # conversion to int> num>=> int>(num)> # printing data type of 'num'> print>(>'converted value:'>, num,> >', type:'>,>type>(num).__name__)> |
>
>Producción
type: float converted value: 9 , type: int>
Ejemplo 2: En la mayoría de los casos, la función int() redondea el resultado a un número entero menor o igual que la entrada, pero el comportamiento no es definido ni predecible. Uno de esos ejemplos se muestra a continuación.
Python3
# example of unpredictable> # behaviour of int()> num1>=> 5.9> num2>=> 5.99999999999999999999> num1>=> int>(num1)> num2>=> int>(num2)> print>(num1, num2, sep>=> '
'>)> |
>
>Producción
5 6>
Método 2: Conversión usando matemáticas.piso() y matemáticas.ceil() .
Un valor flotante se puede convertir en un valor int no mayor que la entrada usando la función math.floor(), mientras que también se puede convertir en un valor int que es el entero más pequeño mayor que la entrada usando math.ceil() función. El módulo de matemáticas debe importarse para poder utilizar estos métodos.
Sintaxis: piso.matematicas(x)
Parámetro:
X: Esta es una expresión numérica.
Devoluciones: entero más grande no mayor que x.
Sintaxis: matemáticas.ceil(x)
idea intellij vs eclipseParámetro:
X: Esta es una expresión numérica.
Devoluciones: Entero más pequeño no menor que x.
Ejemplo : En el siguiente ejemplo, la conversión de float a int se logró utilizando los métodos Floor() y ceil(), el primero devuelve un int no mayor que la entrada y el segundo devuelve el entero más pequeño mayor que la entrada.
Python3
# conversion using floor and ceil .> # importing math module> import> math> num>=> 5.6> floor_value>=> math.floor(num)> ceil_value>=> math.ceil(num)> print>(>'the result using floor() : '>,> >floor_value ,> >', type : '>,>type>(floor_value).__name__)> print>(>'the result using ceil() : '>,> >ceil_value,> >', type: '>,>type>(ceil_value).__name__)> |
>
>Producción
the result using floor() : 5 , type : int the result using ceil() : 6 , type: int>
Método #3: Conversión usando redondo( ) .
Un valor flotante se puede convertir en un valor int que es un valor entero cercano si no pasa el segundo parámetro. En caso de igual diferencia, se dirige hacia un número entero mayor.
Sintaxis: redondo(x)
Parámetro:
x: Esta es una expresión numérica.
Devuelve: múltiplo entero del más cercano.
Ejemplo: en el siguiente ejemplo, la conversión de float a int se logró utilizando los métodos round(), el primero devuelve un número int que es el más cercano al número.
Python3
# conversion using round.> > num>=> 5.6> # Before conversion value and type> print>(>'Type : '>,>type>(num).__name__)> print>(>'Original number is : '>, num)> # conversion to int> value>=> round>(num)> print>(>'Type : '>,>type>(value).__name__)> print>(>'the result using round : '>,value)> |
>
>Producción
Type : float Original number is : 5.6 Type : int the result using round : 6>
Método #4: Conversión usando math.trunc().
Un valor flotante se puede convertir en un valor int. En caso de un número negativo, se comporta como la función de techo de la biblioteca matemática y en el caso de un número positivo, se comporta como una función de piso.
Sintaxis: math.trunk(x)
Parámetro:
x: Esta es una expresión numérica.
Devuelve: un número entero mayor en caso de un número negativo; en caso de un número positivo, un número menor.
Ejemplo : En el siguiente ejemplo, la conversión de float a int se logró utilizando los métodos math.trunc(), el primero devuelve un número int mayor que, en caso de un número negativo, de lo contrario, en el caso de un número positivo, devuelve un número entero más pequeño.
Python3
# conversion using math.trunc().> > import> math> num>=> 5.6> num2>=> ->2.6> # conversion of negative number to int> value>=> math.trunc(num2)> print>(>'Type of value : '>,>type>(value).__name__)> print>(>'the result using round : '>,value)> # conversion of positive number to int> data>=> math.trunc(num)> print>(>'Type of data: '>,>type>(data).__name__)> print>(>'the result using round : '>,data)> > |
>
>Producción
Type of value : int the result using round : -2 Type of data: int the result using round : 5>