目录
2. 当function参数没有返回值时,map函数将返回一个由None组成的序列
描述
map函数是Python的内置函数。它会根据指定的函数对指定的序列做映射。第一个参数function是一个可执行函数;第二个参数iterable是一个可迭代序列,序列中的每一个元素依次调用第一个参数function,得到的返回值组成一个新的序列被map()返回。
语法
map(function, iterable)
名称 | 说明 | 备注 |
function | 函数参数 | 不可省略的参数。可以是Python内置函数或自定义函数 |
iterable | 可迭代序列 | 不可省略的参数 |
使用示例
1. Python内置函数,列表做参
>>> list(map(int, [2.34, 13.2, 73]))
[2, 13, 73]
map函数中,依次让int函数作用于可迭代序列参数----列表中的每一个元素。在每个元素调用完int函数之后,返回一个int函数返回值构成的序列,再将该序列转换为列表输出。
2. 自定义函数做参
def nova(x):
return x + 1
print(tuple(map(nova, {2, 4.3, 5})))
运行结果是:
(3, 5.3, 6)
注意事项
1. map函数返回的是一个map类型的序列,而不是列表
在Python3中,map函数返回的不是一个列表,而是一个map类型的序列.
>>> type(map(int, [3, 4]))
<class 'map'>
使用时可以根据实际情况的需要,将map函数的返回值转化为列表或者元组等。
2. 当function参数没有返回值时,map函数将返回一个由None组成的序列
def test_function(number):
pass
print(list(map(test_function, [1,2,3])))
运行结果是:
[None, None, None]