每天一点小进步:lambda实现列表过滤&trim函数实现

Posted wx2017

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每天一点小进步:lambda实现列表过滤&trim函数实现相关的知识,希望对你有一定的参考价值。

一、lambda 实现列表过滤:

python内置函数filter()

filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换

语法:

filter(function, iterable)

python 使用 lambda 来创建匿名函数。

  • lambda只是一个表达式,函数体比def简单很多。
  • lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。
  • lambda函数拥有自己的命名空间,且不能访问自有参数列表之外或全局命名空间里的参数。
  • 虽然lambda函数看起来只能写一行,却不等同于C或C++的内联函数,后者的目的是调用小函数时不占用栈内存从而增加运行效率。

语法:

lambda [arg1 [,arg2,.....argn]]:expression

具体实现:

list(filter(lambda x: x> 0, [0,-1,2,-4,5]))

过滤列表中小于0的元素 

 

 

二:使用切片实现trim函数功能

def trim(string):
    if string[0] == " ":
        if string[-1] == " ":
            return string[1:-1]
        else:
            return string[1:]
    elif:
        if string[-1] == " ":
            return string[:-1]
   else:
      return string

 

以上是关于每天一点小进步:lambda实现列表过滤&trim函数实现的主要内容,如果未能解决你的问题,请参考以下文章

初学者的每天一点小发现

每天一得:窗口转圈

Share Code | 每天一点PHP2017和2018年最好的PHP IDE比较

枚举表达式列表以过滤集合

如何使用 lambda 获取列表中过滤项目的索引?

每天一半庄171008