Can you think of a value that can neither be defined nor estimated but is so crucial to the programming world? Yes, you got it right! Its *infinity*. But do you know that until 2020 there was no proper way to represent infinity in python? We generally used a **larger/small value or a garbage value** to represent infinity.

**Python Infinity is a variable type that is greater than every other numeric value in python. Rather than using any garbage large value as a limit, you can use pre-defined keyword for initializing an infinite value in Python.**

But now we have many different ways to represent infinity. In this article, we will understand why it is essential in Computer Science and how to express it** in python.**

## How to Represent Infinity in Python?

Infinity can be **positive or negative**. The result of any operation of any with infinity like *sum, product, the division is always infinity*. One more important thing is that infinity is still a **float value**. There is no way to represent infinity as an integer. So, let us now know about all the methods we can represent positive and negative infinity.

### a. Using float()

Python is a *dynamic language*, that is why we can use float() to represent infinity.

```
positive_inf=float('inf')
print("positive_inf:",positive_inf)
# For negative infinity, put minus in front of positive infinity
negative_inf=-float('inf')
print("negative_inf:",negative_inf)
```

positive_inf: inf negative_inf: -inf

### b. Using the math module to represent infinity in python

We can use the math module to represent infinity.

```
import math
# We can use the inf method of the math module
pos_infinity=math.inf
print(pos_infinity)
neg_infinity=-math.inf
print(neg_infinity)
```

inf -inf

### c. Using the Decimal module

```
import decimal
# Using the Decimal function of decimal module
positive_inf=decimal.Decimal("inf")
negative_inf=-decimal.Decimal("inf")
print(positive_inf)
print(negative_inf)
```

Infinity -Infinity

### d. Using the sympy module

```
from sympy import oo
infinity=oo
minus_infinity=-oo
print(infinity)
print(minus_infinity)
```

oo -oo

### e. Using the Numpy Module

For using the numpy library, we first need to import it using –

pip install numpy

```
# importing the numpy library and giving alias np
import numpy as np
infinity=np.inf
negative_infinity=-np.inf
print(infinity)
print(negative_infinity)
```

inf -inf

## Performing Operations on Infinity in python

### a. Adding and Subtracting a number.

```
import math
infinity = math.inf
val=1000
print(infinity+val)
print(infinity-val)
```

inf inf

Whatever number we add or subtract from infinity, we will get infinity.

### b. Multiply and Divide some number with Infinity

```
import math
infinity = math.inf
val=1938
print(infinity*val)
print(infinity/val)
```

inf inf

### c. Finding Remainder of a infinity when divides with a number

```
import math
infinity = math.inf
val=121212
print(infinity%val)
```

nan

### d. Checking if a number is infinity using math.isinf()

We can check if a number is infinity using the **isinf()** method of math module.

```
import math
from sympy import oo
infinity=oo
print(math.isinf(infinity))
```

True

### e. Are all infinity same?

Let us now check whether the values from each methods are same or not?

```
import math
from decimal import Decimal
import numpy as np
from sympy import oo
infinity=oo
inf_floats=float('inf')
inf_math=math.inf
inf_Decimal=Decimal("inf")
inf_np=np.inf
print(inf_floats==inf_math)
print(inf_floats==inf_Decimal)
print(inf_floats==inf_np)
print(inf_floats==infinity) # infinity value from sympy is not equal to other infinity values
```

True True True False

### f. Comparing the Values of python infinity with other values using python max function

Positive Infinity is the** largest number possible and negative infinity is the smallest number.** Let us compare some values with infinity and check whether it is true or not.

```
import math
print(max(math.inf,9999))
print(min(-math.inf,9999))
```

inf -inf

We can also do something like this-

```
import math
large_value=9999999999
infinity=math.inf
if infinity>large_value:
print("Infinity is the largest")
else:
print(large_value,"is larger")
small_value=-9999999999
neg_infinity=-math.inf
if neg_infinity<large_value:
print("Negative Infinity is the smallest")
else:
print(large_value,"is smaller")
```

Infinity is the largest Negative Infinity is the smallest

### g. Changing the type of python infinity into integer

Let us try to change the type from float into integer and see what happens.

```
import math
infinity=math.inf
int_infinity=int(infinity)
print(int_infinity)
```

Error: cannot convert float infinity to integer

## Must Read:

- How to Convert String to Lowercase in
- How to Calculate Square Root
- User Input | Input () Function | Keyboard Input
- Best Book to Learn Python

## Conclusion

The use of infinity in computer science is great. When we want to compare a number with a very large or small number, we generally use infinity. Not only this, **it can be used to measure the performance of different algorithms. It is generally used when we perform computations on a very large scale.**

Try to run the programs on your side and let us know if you have any queries.

*Happy Coding!*