Discuss / Python / 交作业

交作业

Topic source

1题

def normalize(name):
    return name[0].upper()+name[1:].lower()

2题

def prod(L):
    return reduce(lambda x,y:x*y,L)

3题

def str2float(s):    
    def char2num(C):
        return {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9}[C]
    a,b=s.split('.')
    #整数部分=(x*10+y);小数部分=(x*10+y)*0.1^(小数的位数)
    return reduce(lambda x, y: x*10+y, map(char2num, a)) + reduce(lambda x, y: x*10+y, map(char2num, b))*(0.1**len(b))

  • 1

Reply