map()函数返回值问题

map函数中Python2与Python3的区别

1.Python2中map函数之后返回的是一个list
2.而Python3中map函数返回的是一个对象,为了等价转化,我们需要再Python3中的map前加上list()

#python2.0 输出的直接是列表
a=(1,2,3,4,5)
b=[1,2,3,4,5]
c="lh"
 
la=map(str,a)
lb=map(str,b)
lc=map(str,c)
 
print(la)
print(lb)
print(lc)
 
输出:
['1', '2', '3', '4', '5']
['1', '2', '3', '4', '5']
['l', 'h']
#python3.0输出的是迭代对象,需要通过函数转换为其他类型
>>> a=(1,2,3,4,5)
>>> al = map(str,a)
>>> al

>>> print(al)
40>
>>> al =list(map(str,a))
>>> al
['1', '2', '3', '4', '5']
>>> al = tuple(map(str,a))
>>> al
('1', '2', '3', '4', '5')

你可能感兴趣的:(笔记,PYTHON,python)