Python 如何表示无限大的数
在本文中,我们将向您展示如何在Python中表示一个 无限大 的数。
无穷大 是一个未定义的数,可以是正数或负数。一个数用来表示无穷大;两个数值的和可能是一个数值但不同的模式;它可能具有负值或正值。
所有对无穷大的算术操作,无论是求和、减法、乘法还是其他任何操作,结果始终是一个无限大的数。
在计算机科学领域中,无穷大通常用于评估和优化在大规模上进行计算的算法。
Python中的无穷大
为什么无穷大是浮点数据类型而不是整数数据类型,原因是整数在Python中的表示方式。一个整数数值以二进制形式表示,例如,值 7 表示为 0111 。
在Python中没有办法将无穷大表示为整数。这是其他几种流行的编程语言的一个基本特征。然而,因为Python是一种动态类型语言,您可以使用 float(inf) 表达无穷大作为一个 整数 。
因此,我们无法在Python中表示无穷大,或者可以说没有办法将无穷大表示为整数。然而, float(inf) 可以作为一个整数来使用。
Positive Infinity: inf
Negative Infinity: -inf
使用float(‘inf’)表示无穷大数
因为无穷大可以是正数也可以是负数, 它可以分别表示为 float(‘inf’) 和 float(‘-inf’) 。
步骤
以下是执行所需任务的算法/步骤:
- 使用 float(‘inf’) 获取正无穷大的整数值,并创建一个变量来存储它。
-
打印正无穷大的值。
-
使用 float(‘-inf’) 获取负无穷大的整数值,并创建一个变量来存储它。
-
打印负无穷大的值。
示例
以下程序使用 float(‘inf’) 返回正无穷大的值:
# getting a positive infinite integer value using the float(inf) function
positiveInfinity = float('inf')
# printing a positive infinite integer value
print('Positive Infinity value = ', positiveInfinity)
# getting a negative infinite integer value
negativeInfinity = float('-inf')
# printing a negative infinite integer value
print('Negative Infinity value = ', negativeInfinity)
输出
在执行以上程序时,会产生以下输出结果:
Positive Infinity value = inf
Negative Infinity value = -inf
使用数学模块表示无穷大数
我们可以使用数学模块来表示一个无穷大的值,然而,它只适用于Python 3.5或更高版本。因为无穷大可以是正数也可以是负数,所以分别用 math.inf 和 -math.inf 来表示。
示例
# importing math module
import math
# printing a positive infinite integer value using math.inf
print('Positive Infinity value = ', math.inf)
# printing a negative infinite integer value using -math.inf
print('Negative Infinity value = ', -math.inf)
输出
执行上述程序后将生成以下输出-
Positive Infinity value = inf
Negative Infinity value = -inf
使用Decimal()函数表示无穷大数
我们使用 Decimal(‘Infinity’) 来表示正无穷大,使用 Decimal(‘-Infinity’) 来表示负无穷大,以使用十进制模块来表示无穷大。
示例
# importing Decimal from the decimal module
from decimal import Decimal
# printing a positive infinite integer value using the Decimal() function
print('Positive Infinity value = ', Decimal('Infinity'))
# printing a negative infinite integer value using the Decimal() function
print('Negative Infinity value = ', Decimal('-Infinity'))
输出
执行上面的程序后,将产生以下输出结果:
Positive Infinity value = Infinity
Negative Infinity value = -Infinity
在NumPy模块中表示无穷大的方法
另一种在Python中表示无穷大的方法是使用 NumPy 模块,其中 np.inf 和-np.inf分别表示正无穷和负无穷。
NumPy是一个专为在Python中高效处理数组而设计的Python库。它执行速度快,易于学习,并且在存储方面高效。
示例
# importing NumPy module
import numpy as np
# printing a positive infinite integer value using numpy.inf
print('Positive Infinity value = ', np.inf)
# printing a negative infinite integer value using -numpy.inf
print('Negative Infinity value = ', -np.inf)
输出
执行以上程序后,将生成以下输出结果:
Positive Infinity value = inf
Negative Infinity value = -inf
在Python中检查一个数字是否为无穷大
要确定一个给定的数字是否为无穷大,使用math库的 isinf() 方法,该方法返回一个 布尔值 。
示例
# importing numpy and math modules
import numpy as np
import math
# creating a positive infinite integer using numpy.inf
x = np.inf
# creating a negative infinite integer using -numpy.inf
y = -np.inf
# finite integer
z = 40
# checking whether x is infinite number using isinf() function
print(math.isinf(x))
# checking whether y is infinite number using isinf() function
print(math.isinf(y))
# checking whether z is infinite number using isinf() function
print(math.isinf(z))
输出
在执行时,上述程序将生成以下输出 –
True
True
False
在Python中比较无穷大和有限值的比较
将一个无限值与一个有限值进行比较的思想就像简单的事情一样。因为 正无穷大 永远比任何自然数 大 ,而 负无穷大 永远比负数 小 。
示例
# importing numpy module
import numpy as np
# creating a positive infinite integer using numpy.inf
x = np.inf
# creating a negative infinite integer using -numpy.inf
y = -np.inf
# positive finite integer
z = 40
# negative finite integer
k = -40
# creating a function to compare two numbers(positive and negative infinity)
# by accepting 2 numbers as arguments
def compareNumbers(p, q):
# checking if p is greater than q i,e, a first number greater than the second
if p>q:
# printing True if it is greater
print("True")
else:
# printing False if it is Not greater(less)
print("False")
# calling the compareNumbers() by passing any of the 2
# above defined variables for comparison
compareNumbers(x, y)
compareNumbers(x, z)
compareNumbers(y, k)
compareNumbers(x, k)
compareNumbers(y, z)
输出
执行上面的程序,将生成以下输出结果 –
True
True
False
True
False
结论
在本文中,我们学习了如何使用多种方法在Python中表示无限大。我们还学习了如何比较无限和有限值,并确定给定的整数是否为无限大。