# How to convert Float to Int in Python?

• Last Updated : 21 Dec, 2022

Converting a float value to an int is done by Type conversion, which is an explicit method of converting an operand to a specific type. However, it is to be noted that such type of conversion may tend to be a lossy one (loss of data). Converting an int value like 2 to floating-point will result in 2.0, such types of conversion are safe as there would be no loss of data, but converting 3.4 to an int value will result in 3 leading to a lossy conversion.
Examples:

```Input:  3.3
Output: 3

Input:  5.99
Output: 5```

Method 1: Conversion using int():

To convert a float value to int we make use of the built-in int() function, this function trims the values after the decimal point and returns only the integer/whole number part.

Syntax: int(x)

Return: integer value

Example 1: Number of type float is converted to a result of type int.

## 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__)`

Output

```type: float
converted value: 9 , type: int```

Example 2: In most cases the int() function rounds off the result to an integer lesser than or equal to the input, but the behavior is neither definite nor predictable. One such example is shown below.

## Python3

 `# example of unpredictable``# behaviour of int()` `num1 ``=` `5.9``num2 ``=` `5.99999999999999999999` `num1 ``=` `int``(num1)``num2 ``=` `int``(num2)` `print``(num1, num2, sep ``=` `'\n'``)`

Output

```5
6```

Method 2: Conversion using math.floor() and math.ceil().

A float value can be converted to an int value no larger than the input by using the math.floor() function, whereas it can also be converted to an int value which is the smallest integer greater than the input using math.ceil() function. The math module is to be imported in order to use these methods.

Syntax: math.floor(x)

Parameter:

x: This is a numeric expression.

Returns: largest integer not greater than x.

Syntax: math.ceil(x)

Parameter:

x: This is a numeric expression.

Returns: Smallest integer not less than x.

Example : In the below example conversion from float to int has been achieved using the floor() and ceil() methods, the former returns an int no larger than the input and the latter returns the smallest integer larger than the input.

## 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__)`

Output

```the result using floor() :  5 , type :  int
the result using ceil()  :  6 , type:  int```

Method#3: Conversion using round( ).

A float value can be converted to an int value which is closet integer value if does not pass second parameter. In case of equal difference it goes toward larger integer.

Syntax: round(x)

Parameter:

x: This is a numeric expression.

Returns: integer multiple of closest.

Example : In the below example conversion from float to int has been achieved using the round() methods, the former returns an int number which is closest to number.

## 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)`

Output

```Type :  float
Original number is :  5.6
Type :  int
the result using round  :  6```

Method#4: Conversion using math.trunc( ).

A float value can be converted to an int value. In case of negative number it behaves like ceiling function of math library and in case of positive number it behaves like floor function..

Syntax: math.trunc(x)

Parameter:

x: This is a numeric expression.

Returns: larger integer in case of negative number else in case of positive number smaller number.

Example : In the below example conversion from float to int has been achieved using the math.trunc() methods, the former returns an larger int number which in case of negative number, else in case of positive number return smaller integer number.

## 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)`  `     `

Output

```Type of value :  int
the result using round  :  -2
Type of data:  int
the result using round  :  5```

My Personal Notes arrow_drop_up