python3任意字符串转float

有一个不确定内容的字符串需要转成浮点数,但是里面内容不确定,可能为各种情况。

经过测试float()不满足需求,所以就自己写了一个函数:

#!/usr/bin/python3
# -*- coding: UTF-8 -*-
def str2float(str):
    def is_num(char):
        return char in ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '.']
    tmp = ''.join(list(filter(is_num, str)))
    return  0 if len(tmp) < 1 else tmp

print(str2float("你好123世界.45"))