Discuss / Python / 没写完睡不着

没写完睡不着

Topic source

第一题:

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

第二题:

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

第三题:

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]
    t=list(map(char2num,s))
    pos=t.index('.')
    l=len(t)
    t.pop(pos)
    move=1
    for i in range(l-pos-1):
        move=move/10
    return (reduce(lambda x,y:x*10+y,t))*move

代码美观度与智商成正比,尽力了


  • 1

Reply