【面试题】字符串转浮点数

输入:"-78.506"
输出:-78.506
代码:

def str2float(num):
    f1 = 1
    f2 = 0
    y = 1
    u = 0
    for i in range(len(a)):
        if num[i]=='-':
            f1 = -1 # 用来判断正数还是负数
        elif num[i]=='.':
            f2 = 1 # 用来判断处于整数部分还是小数部分
        elif not f2:
            u = u*10 + int(num[i])
        else:
            y = 10*y
            u += int(num[i])/y
    return u*f1

猜你喜欢

转载自blog.csdn.net/baoxin1100/article/details/114282053