内置函数

内置函数

range()

print()

len()

#python内部提供的内置方法

max,min,sorted,map,filter

sorted:对可迭代对象进行排序

 

max求最大值 max(可迭代对象)

list = [1, 2, 3, 4, 5]

max内部会将list中的值通过for取出每一个值,并且进行判断

print(max(list))

dict1 = {
    'tank': 1000,
    'egon': 500,
    'sean': 200,
    'jason': 500
}

# 获取dict1中薪资最大的人的名字
# 字符串的比较: ASCII
print(max(dict1, key=lambda x: dict1[x]))


# 获取dict1中薪资最小的人的名字
print(min(dict1, key=lambda x:dict1[x]))

sorted: 默认升序(从小到大) reverse:反转 reverse默认是False

list1 = [10, 2, 3, 4, 5] print(sorted(list1))

reverse=True--> 降序

print(sorted(list1, reverse=True))

map: 映射

map(函数地址, 可迭代对象) ---> map对象 map会将可迭代对象中的每一个值进行修改,然后映射一个map对象中, 可以再将map对象转换成列表/元组。

注意: 只能转一次。

def func():
    pass
map(func)
# 姓名列表
name_list = ['egon', 'jason', 'sean', '大饼', 'tank']
map_obj = map(lambda name: name + '喜欢吃生蚝' if name == 'tank' else name + 'DJB', name_list)
print(map_obj)  # map_obj ---> list/tuple
print(list(map_obj))  # map_obj ---> 生成器(迭代器) ---> 用完后,不能再取了
print(tuple(map_obj))

reduce: 合并

reduce(函数地址, 可迭代对象, 默认为0)

reduce(函数地址, 可迭代对象, 初始值)

# reduce
from functools import reduce
# 每次从可迭代对象中获取两个值进行合并,
# 初始值: 执行reduce函数时,都是从初始值开始合并
reduce(lambda x, y: x + y, range(1, 101), 0)
# 需求: 求1——100的和
# 普通
init = 1000
for line in range(1, 101):
    init += line

print(init)  # 5050
print(init)  # 6050

# reduce
res = reduce(lambda x, y: x + y, range(1, 101), 1000)
print(res)  # 6050

filter: 过滤

filter(函数地址, 可迭代对象) --> filter 对象

# filter
name_list = ['egon_dsb', 'jason_dsb',
             'sean_dsb', '大饼_dsb', 'tank']
filter_obj = filter(lambda x: x, name_list)

# 将后缀为_dsb的名字 “过滤出来”
# filter会将函数中返回的结果为True 对应 的参数值 “过滤出来”
# 过滤出来的值会添加到 filter对象中
filter_obj = filter(lambda name: name.endswith('_dsb'), name_list)
print(filter_obj)
print(list(filter_obj))  #
原文地址:https://www.cnblogs.com/lvguchujiu/p/11869153.html