map()

map()是python 内置函数,  会根据提供的函数对指定序列做映射。

语法: 

  map(func, iterable1, iterable2,.....)

参数说明:

  • function -- 函数,有两个参数
  • iterable -- 一个或多个序列 . 可以是 字符串, 元组 ,列表等

作用:

  第一个参数 function 对第二个参数(序列)中的每一个元素调用 function 函数,并且它返回可迭代的映射对象.

 

def square(n):
    return n*n
a = [1,3,4,5,6]
b = map(square,a)
print(list(b))

打印结果:
<map object at 0x0000024913DD6F20> # map返回的是一个迭代器
[1, 9, 16, 25, 36]  # 需要使用list()等函数获取值

 

a = [1,2,3,4,5]
b = map(str,a)
print(b)
print(list(b))

打印结果:

<map object at 0x000001E9240C6F20># map返回的是一个迭代器
 ['1', '2', '3', '4', '5']# 需要使用list()等函数获取值

 

a = [1,2,3,4,5]
b = map(str,a)
print(b)
print(list(b))
print(''.join(list(map(str,a))))

打印结果:

<map object at 0x000001A18CC06F20> # 返回的是一个迭代器对象
['1', '2', '3', '4', '5'] # 需要通过list()等方法获取迭代器的值
12345  # 通过.join()函数 生成一个新的字符串. 必须是字符类型的才能拼接

 

 

print(list(map(lambda x: x % 2 == 1, range(1, 11))))
print(list(filter(lambda x: x % 2 == 1, range(1, 11))))

# 执行结果如下:

[True, False, True, False, True, False, True, False, True, False]
[1, 3, 5, 7, 9]

 

posted @ 2022-05-08 19:04  Avicii_2018  阅读(117)  评论(0编辑  收藏  举报