使用一些内置函数,如sorted,sum …

我注意到key = lambda的用法

什么是lambda?它是如何工作的?

还有哪些函数使用key = lambda?

是否有任何其他键值,如key =?

解决方法:

A lambda是一个匿名函数:

>>> f = lambda: 'foo'

>>> print f()

foo

它通常用在诸如sorted()之类的函数中,它将可调用作为参数(通常是关键字关键字参数).你也可以提供一个现有的函数而不是lambda,只要它是一个可调用的对象.

以sorted() function为例.它将按排序顺序返回给定的iterable:

>>> sorted(['Some', 'words', 'sort', 'differently'])

['Some', 'differently', 'sort', 'words']

但是在小写的单词之前对大写单词进行排序.使用key关键字可以更改每个条目,以便对它们进行不同的排序.我们可以在排序之前小写所有单词,例如:

>>> def lowercased(word): return word.lower()

...

>>> lowercased('Some')

'some'

>>> sorted(['Some', 'words', 'sort', 'differently'], key=lowercased)

['differently', 'Some', 'sort', 'words']

我们必须为此创建一个单独的函数,我们无法将def lowercased()行内联到sorted()表达式中:

>>> sorted(['Some', 'words', 'sort', 'differently'], key=def lowercased(word): return word.lower())

File "", line 1

sorted(['Some', 'words', 'sort', 'differently'], key=def lowercased(word): return word.lower())

^

SyntaxError: invalid syntax

另一方面,lambda可以直接指定,在sorted()表达式中内联:

>>> sorted(['Some', 'words', 'sort', 'differently'], key=lambda word: word.lower())

['differently', 'Some', 'sort', 'words']

Lambdas仅限于一个表达式,其结果是返回值.

Python库中有许多地方,包括内置函数,它们可以作为关键字或位置参数进行调用.这里有太多的名字,他们经常扮演不同的角色.

标签:python,lambda,key

来源: https://codeday.me/bug/20190918/1811604.html

python key lambda_python – 什么是key = lambda相关推荐

  1. python max函数_使用'key'和lambda表达式的python max函数

    小编典典 lambda是一个匿名函数,它等效于: def func(p): return p.totalScore 现在max变成: max(players, key=func) 但是由于def语句是 ...

  2. python引入redis_redis 删除大key集合的方法

    redis大key,这里指的是大的集合数据类型,如(set/hash/list/sorted set),一个key包含很多元素.由于redis是单线程,在删除大key(千万级别的set集合)的时候,或 ...

  3. Python操作Redis:键(Key)

    Python操作Redis:键(Key) Python的redis模块管理键(Key)方法主要实现的Redis命令包括KEYS.GET.DEL(delete).EXISTS.RANDOMKEY,TYP ...

  4. Python list.sort()里面的key 运行机制

    list.sort() 对列表进行升序排序,会修改原来的列表变成排序完成后的列表 仅对list对象进行排序,会改变list自身的顺序,没有返回值,即原地排序; list.sort(key=None, ...

  5. python max函数中使用key

    博客转移到个人站点:python max函数中使用key 代码: a = dict(((1,3),(0,-1),(3,21))) m = max(a, key=a.get) 为什么这返回与最大值对应的 ...

  6. python 遍历字典 提取指定key值value

    python 查找字典key的值value 1,简单字典查找key值 1,简单字典查找key值 #! /usr/local/bin/python3 # coding:utf-8 "" ...

  7. python json文件遍历所有key、value 及替换key对于的value

    对于接口自动化测试,一般接口以json形式发送返回,往往我们就需要遍历json文件中所有key,value以及修改替换key对于的value. 例如json发送/接收的文件: SendRegister ...

  8. Redis 笔记(02)— keys 键相关命令(查询数据库key数量、判断key是否存在、指定key过期时间、查看key类型、查看key剩余秒数、选择数据库、删除key、删除数据库)

    1. keys 键相关命令 命令 说明 dbsize 返回当前数据路的key数量 exists key 测试指定key是否存在 expire key seconds 为key指定过期时间 type k ...

  9. Redis源码分析:过期key删除与设置key的过期时间

    Redis中设置key过期时间与过期key的处理流程 在Redis中,可以再设置值的时候就设置该Key的过期时间,也可以通过在expire命令来设置某个key值的过期时间,并且在了解完设置过期时间之后 ...

最新文章

  1. luogu 5471 [NOI2019]弹跳 KDtree + Dijkstra
  2. Java知多少(完结篇)
  3. band math函数_ENVI波段运算(bandmath)运算逻辑及常用运算符详解
  4. 腾讯企业IT部蔡晨:从有界到无界,新一代企业安全防御之道
  5. 4.3.5子网划分和子网掩码
  6. 【数据库系统】SQL视图与表的区别和联系
  7. Python Pycharm 配置Tips01 - 配置Pycharm的Python版本
  8. mysql gis空间数据库_GIS开发:使用空间数据库
  9. 红杉千万美元投资壁虎烘热游戏内置广告
  10. Xcode7 插件制作入门
  11. 深度学习8-常用评估函数与自定义评估函数
  12. c#从Access数据库中选择时,Select条件有日期时间型字段的问题
  13. Python pip windows安装
  14. 安防布线的一些常见问题。
  15. HDOJ(航电)题目分类大全
  16. 成都Uber优步司机奖励政策(3月8日)
  17. 拯救者Y7000电脑一直呼呼呼 声音很大的解决办法
  18. 【Java爬虫-模拟淘宝登录】
  19. Mysql数据库知识点归纳汇总
  20. 【Unity】UGUI控件大小适配父容器

热门文章

  1. 腾讯云运维工程师认证(TCA)在线测试题
  2. 腾讯云TCA运维考试题
  3. 海尔智家罗马尼亚冰箱工厂将投产;长沙世茂希尔顿酒店今夏揭幕​;现代与LG新能源打造环保汽车电池 | 美通企业周刊...
  4. gpg: keyserver timed out
  5. 微信企业支付(一)注意
  6. 【bug记录】Vue项目执行报错处理:You may need an appropriate loader to handle this file type.
  7. 树状数组及线段树入门(SDNU1665-1668)
  8. Install SysBench support MySQL and PostgreSQL
  9. UBuntu18.04 Qt之双HDMI接2个4K屏并分别设置分辨率、主屏、副屏
  10. 问题 : Day of Week