• python内置函数,让你的代码更简洁


    一.filter()筛选函数

    语法:filter(funcition,Iterable)

    lst = [1,2,3,4,5,6,7]
    ll = filter(lambda y: y%2==0, lst)
    print(list(ll))  #筛选所有偶数,不加list,打印内存地址

    二.map()映射函数

    可以对可迭代对象的每一个元素进行映射,分别取执行function

    def func(n):
        return n*n
    lst = map(func,[1,2,3,4,5])
    print(lst)    #打印内存地址
    print(list(lst))  # 打印列表中数字的平方

    三.sorted()排序函数

    语法:sorted(Iterable,key=None,reverse=False)

    Iterable:可迭代对象

    key:排序规则(排序函数),在sorted内部会将可迭代对象中的每一个元素传递给这个函数的参数,根据函数运算的结果进行排序

    reverse:是否是倒叙. True:倒叙,False:正序

    lst = [1,5,6,4,3]
    new_lst = sorted(lst)
    print(lst)  #原列表不会变
    print(new_lst) #新列表是从小到大排序
    lst = ["麻花藤", "冈本次郎", "中央情报局", "狐仙"]
    print(sorted(lst,key=lambda s:len(s))) #还可以和lamda一起用
    
    
    dic = {1:"a",3:"b",2:"c"}
    dic1 = sorted(dic)
    print(dic1)   #如果是字典,返回排序后的key
    lst = ["麻花藤", "冈本次郎", "中央情报局", "狐仙"]
    def func(s):
        return len(s)
    print(sorted(lst,key = func))  #还可以和函数一起用,按字符串长度排序

    四.lamda

    表示的是匿名函数,不需要def来声明,一句话就可以声明出一个函数

    语法:函数名=lamda 参数:返回值

    注意:

    1.函数的参数可以有多个,多个参数之间用逗号隔开

    2.匿名函数不管多复杂.只能写一行,且逻辑结束后直接返回数据

    3.返回值和正常的函数一样,可以是任意数据类型

    匿名函数并不是说一定没有名字,这里的变量就是一个函数名,说他是匿名原因是我们通过__name__查看的时候是没有名字的,统一都叫lamda,在调用的时候没有什么特别之处.

    def func(n)
        return n**n
    print(func(10))
    
    
    
    
    f = lamda n :n**n
    print(f(10))
  • 相关阅读:
    视图和同义词的区别
    【MooTools】自定义滚动条小插件
    有理想的程序员必须知道的15件事
    革新:.NET 2.0的自定义配置文件体系初探
    我的2006年学习计划
    为ASP.NET 2.0配置数据源
    通用异常处理框架
    泛型的序列化问题
    实战SVN For Apache2(二)
    LightningFramework系列(一、初步总架构图)
  • 原文地址:https://www.cnblogs.com/liuqingyang/p/9483647.html
Copyright © 2020-2023  润新知