我如何在python中表示一个无限的数字?无论你在程序中输入哪个数字,都不应该大于这个表示无穷大的数字。
当前回答
另一种不太方便的方法是使用Decimal class:
from decimal import Decimal
pos_inf = Decimal('Infinity')
neg_inf = Decimal('-Infinity')
其他回答
在python2。x有一个肮脏的黑客达到了这个目的(千万不要使用它,除非绝对必要):
None < any integer < any string
因此,检查i < "对于任何整数i都为真。
它在python3中已被合理地弃用。现在这样的比较以
TypeError: unorderable types: str() < int()
用python表示∞
float("inf")或float("inf")或float("inf")或float("inf")或float("infinity")创建一个持有∞的float对象
你也可以在python中表示-∞
float("-inf")或float("-inf")或float("-inf")或float("-infinity")创建一个持有-∞的float对象
可以执行算术运算:
infinity = float("inf")
ninfinity = float("-inf")
nan = float("nan")
print(infinity*infinity)#inf
print(ninfinity+infinity)#not a number
print(1/-infinity)#is -0.0
print(nan*nan)# is not a number
print(1/infinity) # is 0.0 since 1/∞ is 0
输出:
$ python3 floating.py
inf
nan
-0.0
nan
0.0
另一种不太方便的方法是使用Decimal class:
from decimal import Decimal
pos_inf = Decimal('Infinity')
neg_inf = Decimal('-Infinity')
∞
1. 使用float('inf')和float('-inf)
positive_infinity = float('inf')
negative_infinity = float('-inf')
2. 使用Python的数学模块
import math
positive_infinity = math.inf
negative_infinity = -math.inf
3.整数的最大尺寸
import sys
maxSize = sys.maxsize # 9223372036854775807
minSize = -sys.maxsize # -9223372036854775807
4. 使用Python的十进制模块
from decimal import Decimal
positive_infinity = Decimal('Infinity')
negative_infinity = Decimal('-Infinity')
如果你使用SymPy,你也可以使用symphony .oo
>>> from sympy import oo
>>> oo + 1
oo
>>> oo - oo
nan
etc.
推荐文章
- 插入一行到熊猫数据框架
- 要列出Pandas DataFrame列
- 在Django模型中存储电话号码的最佳方法是什么?
- 从导入的模块中模拟函数
- 滚动或滑动窗口迭代器?
- python的方法找到最大值和它的索引在一个列表?
- 如何读取文件的前N行?
- 如何删除matplotlib中的顶部和右侧轴?
- 解析.py文件,读取AST,修改它,然后写回修改后的源代码
- Visual Studio Code:如何调试Python脚本的参数
- 使用元组/列表等等。从输入vs直接引用类型如list/tuple/etc
- 结合conda环境。Yml和PIP requirements.txt
- 将命名元组转换为字典
- 如何使x轴和y轴的刻度相等呢?
- Numpy在这里函数多个条件