1
flaneurse 2017-07-25 21:40:45 +08:00
匿名函数,涉及到函数式编程,Python 的 lambda 就是个半残废,不会 fp 没必要用
--- k 就是个变量,就像列表解析里的变量一样,暂时的。 --- 写成你看得懂得就是这样 ''' prices = {...} def function(k): return prices[k] ''' --- min(), max(), sorted(), 都可以接收一个 key=func 参数,自己看文档去 |
2
misaka19000 2017-07-25 21:46:38 +08:00
k 代表了 prices 里面的每一个元素,相当于:
for key in prices.keys(): print key 这里的 key,prices[k]就很好理解了,就是这个 key 对应的 value,相当于把所有的 value 遍历一遍,找出最小(最大)的值 |
3
weyou 2017-07-25 21:46:51 +08:00 via Android
为神马不看文档呢。k 是 min/max 调用 key 回调函数是传入的参数,这个参数就是前面的 iterable 参数的每个值。dict 是 iterable 的并且每个值等于其 key。
|
4
misaka19000 2017-07-25 21:47:20 +08:00
@flaneurse #1 明明 py 的 lambda 很好用的。。。
|
5
saximi OP 谢谢大家指点,我想明白了,prices 作为一个字典,根据值进行排序后,MIN 或 MAX 方法返回的是字典的键而不是值
|