在本教程中,我们将学习如何在 Python 中表示无限数。正如我们所知,无穷大被定义为一个未定义的值,可以是正值也可以是负值。所有的算术运算,比如加法,对无穷大的值进行减法、除法、乘法等,总会得到无穷大的数。

目录 - Python Infinity

  • Python 无限

  • Python中使用float表示无穷大

  • 用数学模块表示无穷大

  • Python的十进制模块来表示无穷大

  • 使用 NumPy 库实现 Python 无穷大

  • 在 Python 中检查一个数是否是无限的

  • 对无限数的算术运算

  • 结语

Python 无穷大

无穷大被定义为没有尽头的东西,因此不表示为整数。我们知道,对无限值执行的所有算术运算都会给出无限值。它表示为浮点值。那么,让我们了解一下表示正负无穷值的所有方法。

无穷大之所以不是int数据类型,而是float数据类型,取决于 Python 中数字的表示方式。整数使用其二进制表示形式表示,例如值 7 表示为 0111。

然而,浮点数由 3 个组件表示 -

标志: 这就像名字一样简单。 0 代表正数,1 代表负数。

**尾数:**尾数是科学计数法数字或浮点数的一部分,由其有效数字组成。这里我们只有 2 位数字,即 O 和 1。因此,归一化尾数是小数点左侧只有一个 1 的尾数。

**指数:**指数字段需要同时表示正指数和负指数。将偏差添加到实际指数以获得存储的指数

这符合用于存储浮点数的 IEEE 754 标准。该标准保留了一些值来表示特殊数字。这些特殊数字之一是无穷大。

根据这个标准,当指数部分的所有位都为 1,尾数部分的所有位都为 0 时,浮点数表示无穷大。另外,如果符号位为 0,则为正无穷大,而符号位中的 1 表示负无穷大。

因为无穷大是一个特殊的值,不能用简单的二进制表示法来表示。相反,它的数据类型在 Python 中是浮点数。

Python中使用float表示无穷大

由于无穷大既是正数也是负数,因此,在Python中,它们可以用float(‘inf’)float(‘-inf’)来表示。

输入:

#Positive Infinity
positive_infinity = float('inf')
print ('Positive Infinity: ', positive_infinity)

#Negative Infinty
negative_infinity = float('-inf')
print ('Negative Infinity: ', negative_infinity)

输出:

Positive Infinity: inf
Negative Infinity: -inf

使用 Python 的数学模块来表示无穷大

我们可以使用数学模块来表示一个无限值,但它只适用于 3.5 或更高版本的 python。由于无穷大可以是正数也可以是负数,所以分别表示为math.inf-math.inf

输入:

import math

#Positive Infinity
positive_infinity = math.inf
print ('Positive Infinity: ', positive_infinity)

#Negative Infinty
negative_infinity = -math.inf
print ('Negative Infinity: ', negative_infinity)

不要忘记将数学模块导入您的代码,因为除非数学模块存在,否则它将无法工作。

输出:

Positive Infinity: inf
Negative Infinity: -inf

使用Python的十进制模块来表示无穷大

为了使用 decimal 模块表示无限,我们使用Decimal(‘Infinity’)表示正 Infinite,使用Decimal(‘-Infinity’)表示负无限。

输入:

from decimal import Decimal

#Positive Infinity
positive_infinity = Decimal('Infinity')
print ('Positive Infinity: ', positive_infinity)

#Negative Infinty
negative_infinity = Decimal('-Infinity')
print ('Negative Infinity: ', negative_infinity)

输出:

Positive Infinity: inf
Negative Infinity: -inf

使用 NumPy 库实现 Python 无穷大

NumPy 模块是 Python 中表示无穷大的另一种方式,其中np.inf-np.inf分别表示正无穷和负无穷。

输入:

from numpy as np

#Positive Infinity
positive_infinity = np.inf
print ('Positive Infinity: ', positive_infinity)

#Negative Infinty
negative_infinity = -np.inf
print ('Negative Infinity: ', negative_infinity)

除非您的代码中存在 NumPy 库,否则它将不起作用。所以不要忘记导入它。

输出:

Positive Infinity: inf
Negative Infinity: -inf

在 Python 中检查一个数是否是无限的

要检查给定的数字是否是无限的,我们可以使用数学模块的isinf()函数。它返回一个布尔值,这意味着如果给定的数字是无限的,它返回真,如果数字不是,则返回假。

输入:

import decimal from Decimal
import math

#defining a positive infinte, a neagative infinte and a finite integer
a = Decimal('Infinity')
b = Decimal('-Infinity')
c = 1000

#checking if the number is infinite or not
print(math.isinf(a))
print(math.isinf(b))
print(math.isinf(c))

输出:

TRUE
TRUE
FALSE

对无限数的算术运算

由于无穷大是一个浮点值,因此可以对其执行各种算术运算。这些操作的结果也由 IEEE 标准定义。

输入:

# Define positive infinity value
a = float('inf')

# Define Negative infinity value
b = float('-inf')

# Operations on positive infinity value
print('For Positive Infinity Value:')
print('Addition value : ',a + 7)
print('Subtraction value : ',a - 7)
print('Multiplication value: ',a * 7)
print('Division value: ',a / 7)
print("-----------------------------------")
# Operations on negative infinity value
print('For Negative Infinity Value:')
print('Addition value: ',b + 14)
print('Subtraction value: ',b - 14)
print('Multiplication value: ',b * 14)
print('Division value: ',b / 14)

输出:

For Positive Infinity Value:
Addition value :  inf
Subtraction value :  inf
Multiplication value:  inf
Division value:  inf
-----------------------------------
For Negative Infinity Value:
Addition value: -inf
Subtraction value: -inf
Multiplication value: -inf
Division value: -inf

结语

无限是无限、无止境、无界的事物的概念。因此,Hermann Weyl 写了一本书,“Levels of Infinity”,其中他说,“数学是无限的科学”,可以在网上阅读。 Python 还有其他很棒的概念,可以在这里阅读它们。

附言如果您正在为您的团队聘请开发人员并且不确定如何编写职位描述,请查看以下页面以获得简单的提示:

安卓京东

点网

Logo

学AI,认准AI Studio!GPU算力,限时免费领,邀请好友解锁更多惊喜福利 >>>

更多推荐