python - 除以零时得到无穷大

标签 python

是否可以将说无穷大分配给除以 0 的东西而不是扔 ZeroDivisionError ?

就像将无穷大赋给 something/0 的函数一样.

最佳答案

如果你只想要一个代表无穷大的浮点数,你可以发出 float('inf')float('-inf') .

标准 Python 浮点数和整数将为您提供 ZeroDivisionError ,但您可以使用 numpy数据类型。

>>> import numpy as np
>>> np.float64(15)/0
inf

numpy ,写一个函数:
def my_div(dividend, divisor):
    try:
        return dividend/divisor
    except ZeroDivisionError:
        if dividend == 0:
            raise ValueError('0/0 is undefined')
            # instead of raising an error, an alternative
            # is to return float('nan') as the result of 0/0

        if dividend > 0:
            return float('inf')
        else:
            return float('-inf')

关于python - 除以零时得到无穷大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62264277/

相关文章:

python - 在 Python 3 中生成具有随机长度的类似随机的唯一字符串的最快方法

python - Tkinter 在 Selenium 进程中卡住

python - TypeError:无法根据规则 ('O' 将数组数据从 dtype ('float64' ) 转换为 dtype 'safe' )

python - 如何使用正则表达式删除制表符和换行符

python - Numpy 沿一个轴提取任意子数组

python - 如何根据 Pandas 数据框中的前几行添加带有值的额外列?

python - 尝试使用 pygame 制作游戏的 Python 新手

python - 如何查找 NumPy 数组中的部分元素

python - 代码中 'isalnum'方法无法正常工作

python - 如何在 Sphinx 文档中创建内部超链接