无法将字符串转换为float

时间:2015-01-17 01:36:32

标签: python string floating-point floating-point-conversion floating-point-exceptions

我从csv获取信息,我需要一个理论上是浮点数的字段,但是可以变空,我这个函数接受浮点数所在的行[i],并且应该返回浮动,

def fun(x):
    if not(x):
        x=0
        x=float(x)
    else:
        x = float(x)
    return x

但是当我尝试它时会抛出这个错误告诉我" float()参数必须是字符串或数字"

2 个答案:

答案 0 :(得分:1)

好的,怎么样

def fn(x):
    try:
        return float(x)
    except (ValueError, TypeError):
        return 0.0

答案 1 :(得分:-1)

def fun(x):
    try:
        x = float(x)
    except ValueError:
        x = 0
    return x

print fun("1")
print fun(' ')

输出:

1.0
0