python函数学习心得

1、lambda表达式

lambda表示的用法:(lambda 参数列表:执行语句(也即返回值))(对应所传参数)

 print((lambda a, b: a if a > b else b)(1000, 500))

lambda还可以对于数据进行按照一定规则排序

students = [
 {'name': 'TOM', 'age': 20},
 {'name': 'ROSE', 'age': 19},
 {'name': 'Jack', 'age': 22}
]
students.sort(key=lambda x: x['name'])
print(students)
students.sort(key=lambda x: x['name'],reverse=True)
print(students)

2、函数中常用的几个封装好的函数

map函数:

map(func,lst)

其中传递参数为一个时,都将作用在lst列表的每一个值中,返回一个列表

reduce函数:

其中传递参数为两个,依次作用在列表中,返回一个值

filter函数:
作用在列表的每一个值,如果其中的条件成立则返回该值,不成立则不返回,最后返回一个列表

def func(x):
 return x**2
lst=[1,2,3,4]
res=map(func,lst)
print(list(res))
import functools
list1=[1,2,3,4,5]

def funcd(x,y):
 return x+y

res1=functools.reduce(funcd,list1)
print(res1)

def filters(x):
 return x%2==0
res3=filter(filters,list1)
print(list(res3))

 

若利用map来代替filter函数,将不会返回数值,而是返回是否为真。

 

おすすめ

転載: blog.csdn.net/it_xiaohu123/article/details/120319366