python基础(16):内置函数(二)

网友投稿 244 2022-08-01

1. lamda匿名函数

为了解决⼀些简单的需求⽽设计的⼀句话函数

# 计算n的n次⽅

def func(n):

  return n**n

print(func(10))

f = lambda n: n**n

print(f(10))

lambda表⽰的是匿名函数,不需要⽤def来声明,⼀句话就可以声明出⼀个函数。

语法:

函数名 = lambda 参数: 返回值

注意:

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

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

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

匿名函数并不是说⼀定没有名字,这⾥前⾯的变量就是⼀个函数名,说他是匿名原因是我们通过__name__查看的时候是没有名字的,统⼀都叫lambda,在调⽤的时候没有什么特别之处,像正常的函数调⽤即可。

回到顶部(go to top)

2. sorted()

排序函数。

语法:

sorted(Iterable, key=None, reverse=False)

  Iterable: 可迭代对象

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

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

lst = [1,5,3,4,6]

lst2 = sorted(lst)

print(lst) # 原列表不会改变

print(lst2) # 返回的新列表是经过排序的

dic = {1:'A', 3:'C', 2:'B'}

print(sorted(dic)) # 如果是字典. 则返回排序过后的key

和函数组合使⽤

# 根据字符串⻓度进⾏排序

lst = ["麻花藤", "冈本次郎", "中央情报局", "狐仙"]

# 计算字符串⻓度

def func(s):

  return len(s)

print(sorted(lst, key=func))

和lambda组合使⽤

# 根据字符串⻓度进⾏排序

lst = ["麻花藤", "冈本次郎", "中央情报局", "狐仙"]

# 计算字符串⻓度

def func(s):

  return len(s)

print(sorted(lst, key=lambda s: len(s)))

lst = [{"id":1, "name":'alex', "age":18}, {"id":2, "name":'wusir', "age":16}, {"id":3, "name":'taibai', "age":17}]

# 按照年龄对学⽣信息进⾏排序

print(sorted(lst, key=lambda e: e['age']))

回到顶部(go to top)

3. filter()

筛选函数

语法:

fifilter(function. Iterable)

  function: ⽤来筛选的函数,在fifilter中会⾃动的把iterable中的元素传递给function,然后根据function返回的True或者False来判断是否保留此项数据

  Iterable: 可迭代对象

lst = [1,2,3,4,5,6,7]

ll = filter(lambda x: x%2==0, lst) # 筛选所有的偶数

print(ll)

print(list(ll))

lst = [{"id":1, "name":'alex', "age":18}, {"id":2, "name":'wusir', "age":16}, {"id":3, "name":'taibai', "age":17}]

fl = filter(lambda e: e['age'] > 16

共3页: 上一页123下一页

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:python基础(15):内置函数(一)
下一篇:画一个心送给心爱的小姐姐,Python绘图库Turtle
相关文章

 发表评论

暂时没有评论,来抢沙发吧~