python map函数分析(高级迭代器)

在做力扣时是不是经常遍历列表?用map就对啦!

它是 Python 内置的一个高阶函数,用于将一个函数应用到一个可迭代对象(如列表、元组等)的每个元素上,返回一个新的可迭代对象,注意返回值并不是列表(元组)哦!

map(function, iterable)

上式中的function 指的是迭代过程中对所有迭代对象的统一操作。

numbers = [1, 2, 3, 4, 5]
squared_numbers = map(lambda x: x**2, numbers)
print(list(squared_numbers))  # 输出: [1, 4, 9, 16, 25]

(lambda作用是:如果你想创建一个函数,但是不想对其命名,就可以用其代替)注意结果中  list(squared_numbers) !

既然可以lambda一个函数,当然也能自己写一个有名称的函数咯!

def square(x):
    return x**2
numbers = [1, 2, 3, 4, 5]
result = map(square, numbers)
print(list(result))  # 输出: [1,4,9,16,25]

以上是map函数迭代一个列表,当然它也可以同时迭代两个列表。就像上述函数square()函数只有一个参数x,所以只对一个列表进行迭代。如果有两个甚至多个参数那么就能对多个列表迭代。

numbers1 = [1, 2, 3]
numbers2 = [10, 20, 30]
result = map(lambda x, y: x + y, numbers1, numbers2)
print(list(result))  # 输出: [11, 22, 33]

当然,如果你想让x的平方加上y也很容易,直接在函数中上修改即可!

如果想和第二段代码一样,创建对应的函数即可哦。

能给小王点个关注吗        0wO!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值