from functools import reduce
def str2num(s):
return {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5,
'6': 6, '7': 7, '8': 8, '9':9}[s]
pp = s.index('.')
ss = s[:pp] + s[pp+1:]
result = reduce(lambda x, y: x * 10 + y, map(str2num,ss))
return result / (10**len(s[pp+1:]))
其中最重要的就是就reduce函数要有两个可以调用的参数才能使用
例如:f(x,y)=x*y
reduce(f,[1,2,3,4])=f(f(f(1,2),3),4)
其中map函数形成的是惰性序列,不能直接显示,Iterator需要一步一步生成
Lambda表达式正好适用于sort()函数的带关键字排序
可以直接选取要排序列表中的key
例如:[('q',2),('w',2),('e',3)]
key=lambda x:x[0] 这是以第一个位置作为关键词
以此类推。。
一点点最基础的东西,自己看看