如何更改将float('inf')转换为str的python方式?

ven

我的应用程序正在处理数字,其中有pythons float('inf')问题是我希望将该数字转换为完整的单词:"Infinity"

for x in [float('inf'), float(5.0)]:
    print(x)

结果:

inf
5.0

我希望它是:

Infinity
5.0

我可以通过某种方式设置字符串中无穷大的表示方式吗?

我当然可以在下面做类似的方法:

def cast_num(num):
    if num == float('inf')
        return 'Infinity'
    else:
        return str(num)

但是这种方法很昂贵-它必须处理每个数字。

有更好的选择吗?

我可以在python中设置一些标志吗?(如“ setlocale”)

托尼·萨福克66

另一种方法是使用简单的字典:

values = {float('inf'):'Infinity'}
i = float('inf')
p = 0.5
print(values.get(i, str(i)))
print(values.get(p, str(p)))

输出量

Infinity
0.5

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章