在Python中,是否有一个字符串s使float(s)为None?

时间:2015-11-25 23:37:53

标签: python python-2.7

我很好奇。对于上下文,我有一个浮点字符串表示列表(包括一些无值),我想使用列表推导将其转换为实际浮点数列表。如果字符串为“无”,则代码会出错:

arr = ['1', '2.5', 'None']
arr2 = [float(i) for i in arr]
# Gives an error

我知道float函数需要inf,-inf或nan,我可以使用它们来解决这个问题,但是如果有一个字符串被转换为None,我很好奇。

1 个答案:

答案 0 :(得分:2)

一个简单的解决方案是使用三元语句

arr2 = [None if i == "None" else float(i) for i in arr]