内置函数

匿名函数统一的名字是:<lambda>
lambda表达式: lambda 参数:返回的值

fn = lambda a, b : a + b
print(fn(2,10))

def func(a,b):
  return a + b
print(func(2,10))

这两个意思是一样的,lambda 是定义一个很简单的函数. 复杂的函数不要用lambda
sorted()  排序    执行流程: sorted(可迭代对象,key=函数)
把可迭代对象中的每一项拿出来, 作为参数传递给后面key函数.
函数返回数字. 根据数字进行排序
lst = ["卢本伟牛逼", "UU一血PDD拿", "葫芦岛吴奇隆", "55开", "white"]
def func(s):
    return len(s)
s = sorted(lst,key=func)
print(s)

lst = ["卢本伟牛逼", "UU一血PDD拿", "葫芦岛吴奇隆", "55开", "white"]
g = sorted(lst,key=lambda i:len(i))
print(g)

 

filter()  过滤        执行流程: filter(函数,可迭代对象)
lis = [
    {"name":"alex", "shengao":150, "tizhong":250},
    {"name":"wusir", "shengao":158, "tizhong":150},
    {"name":"taibai", "shengao":177, "tizhong":130},
    {"name":"ritian", "shengao":165, "tizhong":130},
    {"name":"nvshen", "shengao":160, "tizhong":120},
    {"name":"baolang", "shengao":183, "tizhong":190}
]
g = filter(lambda dic:dic["tizhong"]<=180,lis)
print(list(g))
# 把体重大于180的过滤掉

  

map()   映射函数     执行流程: map(函数,可迭代对象)
lis = ["卢本伟","UU","PDD","小智"]
a = map(lambda i:i+"牛逼",lis)
print(list(a))

  

有返回值的字符串串形式的代码用eval().

没有返回值的字符串串形式的代码用exec().

一般很少用到compile()      (当别人把代码用文本格式传输过来的时候,用这个最合适)  参照模式 :  compile("1+2","",mode="eval")

 

内置函数分类图 :

  https://www.processon.com/view/link/5c10f564e4b091f1bf71eb55

 


 

 

posted on 2018-12-12 16:35  哎呀!土豆  阅读(101)  评论(0编辑  收藏  举报

导航