Discuss / Python / 日常龙鸣写法vs贵族写法

日常龙鸣写法vs贵族写法

Topic source

龙鸣写法与贵族写法的思路就不分析了,直接贴代码。

龙鸣写法: from functools import reduce

def char2num(s): digits = {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9} return digits[s]

def str1num(x,y): return x*10+y

def str2float(s): i = 0 while s[i] != ".": i+=1 s=s[:i]+s[i+1:] return reduce(str1num,map(char2num,s))/pow(10,len(s)-i) 贵族写法:

def str2float(s): from functools import reduce def char2num(s): digits = {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9} return digits[s] return reduce(lambda x,y:x10+y,map(char2num,s.split('.')[0])) +reduce(lambda x,y:x/10+y,map(char2num,s.split('.')[1][::-1]))/10


  • 1

Reply