Python 常用内置函数

1. Sorted() 排序函数

作用: 排序(可通过key参数, 函数)

a = [{'name': 'alex', 'age': 76}, {'name': 'bob', 'age': 34}, {'name': 'jan', 'age': 31}, {'name': 'tony', 'age': 43}, {'name': 'ton', 'age': 67}]
b = sorted(a, key=lambda x: x.get('age', 0)) #age进行排序, 无则0
print(b)

执行结果:

 

 

2. filter() 过滤函数

作用: 用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表

该接受两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判断,然后返回True和False,最后将返回True的元素放到新列表中。

注意:Python2.7返回列表,Python3.x返回迭代器对象

 

语法:

filter(function, iterable)

参数:

function -- 判断函数

iterable  -- 可迭代对象

 

实例:

def test(num):
    return True if num % 2 else False

# function函数返回True和FALSE
newlist = filter(test, [i for i in range(10)]) # 迭代器对象

print(newlist.__iter__())
print(newlist.__next__())
print(newlist.__next__())
print(newlist.__next__())
print(newlist.__next__())

for v in newlist:
    print(v)

执行结果:

 

3. map() 映射函数

作用: map可以根据提供的函数对指定序列做映射, 它接受一个函数和一个list, 并通过把函数function作用在list上的每个元素, 然后返回一个新的list, map函数的传参也可以是多个, 注意这个函数一定要有返回值

def map_test(num1, num2):
    return num1 * num2


list_test1 = [2, 5, 1, 3, 6, 32]
list_test2 = [5, 2, 4, 6, 3, 1]
res = map(map_test, list_test1, list_test2)
print(res, list(res))

执行结果:

 

 

4. enumerate()

dict_test = [{'name': 'alex', 'age': 76}, {'name': 'bob', 'age': 34}, {'name': 'jan', 'age': 31}, {'name': 'tony', 'age': 43}, {'name': 'ton', 'age': 67}]
for index, val in enumerate(dict_test):
    print(index, val) #索引, 值 

执行结果:

 

 

5. zip()

作用: zip函数接受任意多个(包括0个和1个)序列作为参数, 返回一个tuple列表

x = [1, 2, 3]
y = [4, 5, 6]
z = [7, 8, 9]
xyz = zip(x, y, z)
print(xyz, list(xyz))

name_list = ['alex', 'bob', 'jan', 'tony']
age_list = [2, 43, 54, 5, 4]
res = zip(name_list, age_list)
print(dict(res))

执行结果:

 

posted @ 2021-02-19 14:50  风不再来  阅读(91)  评论(0编辑  收藏  举报