考虑下面的股票名和价格映射字典:
prices = {
'ACME': 45.23,
'AAPL': 612.78,
'IBM': 205.55,
'HPQ': 37.20,
'FB': 10.75
}
可以在 min() 和 max() 函数中提供 key 函数参数来获取最小值或最大值对应的键的信息。比如:
min(prices, key=lambda k: prices[k]) # Returns 'FB'
max(prices, key=lambda k: prices[k]) # Returns 'AAPL'
请问上面例子中的 lambda 是如何起作用的?比如 min 函数中,往 lambda 传入一个 k 变量?这个 k 是怎么来的呢?以及为何 prices[k]可以作为 key 呢?
感谢!
prices = {
'ACME': 45.23,
'AAPL': 612.78,
'IBM': 205.55,
'HPQ': 37.20,
'FB': 10.75
}
可以在 min() 和 max() 函数中提供 key 函数参数来获取最小值或最大值对应的键的信息。比如:
min(prices, key=lambda k: prices[k]) # Returns 'FB'
max(prices, key=lambda k: prices[k]) # Returns 'AAPL'
请问上面例子中的 lambda 是如何起作用的?比如 min 函数中,往 lambda 传入一个 k 变量?这个 k 是怎么来的呢?以及为何 prices[k]可以作为 key 呢?
感谢!