内置函数

内置函数

  • abs()函数

求数字的绝对值

a = -1
b = 2
print(abs(a)) # 1
print(abs(b)) # 2
  • max()函数

max(iterable,key)
求可迭代对象的最大值
(1)简单使用max()函数

a = [1,3,2,5,4]
ret = max(a)
print(ret)  # 5

(2)使用key关键字
key = 函数名称 ---->指定求最大值的规则

a = [-1,-3,-2,-5,-4]
b = max(a,key=abs)  # 返回a中绝对值最大的元素
print(b)  # -5

(3)根据name和age返回最大的信息

lst = [
    {'name':'张三','age':19},
    {'name':'李四','age':29},
    {'name':'王五','age':8}
       ]
ret = max(lst)
print(ret) # 报错,字典和字典之间不能进行比较

根据age进行比较

lst = [
    {'name':'张三','age':19},
    {'name':'李四','age':29},
    {'name':'王五','age':8}
       ]
def getAge(x): # x 是字典类型
    return x['age']
res = max(lst,key=getAge) # 返回的是a中的 元素
# res = max(lst,key=lambda x:x['age']) # 返回的是a中的 元素
print(res) # {'name': '李四', 'age': 29}

一般用lambda表达式定义,然后将匿名函数的执行结果传给key,以key为标准进行大小的判断

  • map()函数

map(function,iterable)
有两个参数,第一个参数是一个函数,第二个参数是可迭代的内容
返回一个迭代器,该迭代器将函数应用于iterable的每一项,生成结果。

求lst中每一个元素的平方值
lst = [1,2,3]
def pingfang(x):
    return x*x
ret = map(pingfang,lst) # 注意:这里的第一个参数是 函数名
print(ret) # 返回一个迭代器
# for i in ret:
#     print(i)
print(list(ret)) # 将迭代器转换成列表类型
  • filter()函数

filter(function,iterable)
用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的迭代器。
第一个参数是函数,第二个参数是可迭代的对象,iterable中的每一个元素作为参数传递给函数进行判断,放回True或False,最后将返回True的元素放到迭代器中。

过滤出列表中的所有奇数
lst = [1,2,3,4,5,6,7,8,9,10]
def odd_number(x):
    if x%2 != 0:
        return True
    else:
        return False
res = filter(odd_number,lst)
# res = filter(lambda x:True if x%2 != 0 else False,lst)
print(list(res))
  • zip()函数

zip(*iterables) 返回元组的迭代器

可接受多个可迭代对象作为参数,将对象中的元素打包成一个tuple,然后返回一个迭代器,迭代器属于可迭代类型,可以遍历出其中的元素。
如果多个可迭代对象的长度不一致,则所返回的元组与长度最短的可迭代对象相同。

zip()函数的使用
a = [1,2,3]
b = ['a','b','c']
ret = zip(a,b) # 参数可以是多个可迭代的对象
print(ret) # 返回一个迭代器
for i in ret:
    print(i)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值