解决Python3下map函数的显示问题

yipeiwu_com6年前Python基础

map函数是Python里面比较重要的函数,设计灵感来自于函数式编程。Python官方文档中是这样解释map函数的:

map(function, iterable, ...)

Return an iterator that applies function to every item of iterable, yielding the results. If additional iterable arguments are passed, function must take that many arguments and is applied to the items from all iterables in parallel. With multiple iterables, the iterator stops when the shortest iterable is exhausted.

即map函数接收的第一个参数为一个函数,可以为系统函数例如float、或者def定义的函数、或者lambda定义的函数均可。

举一个简单的例子,下面这个例子在Python2.7下是可以正常显示的:

ls = [1,2,3]
rs = map(str, ls)
 #打印结果
['1', '2', '3']
lt = [1, 2, 3, 4, 5, 6]
def add(num):
  return num + 1
rs = map(add, lt)
print rs
#[2,3,4,5,6,7]

但是在Python3下我们输入:

ls=[1,2,3]
rs=map(str,ls)
print(rs)

显示的却是:

<map at 0x3fed1d0>

而不是我们想要的结果,这也是Python3下发生的一些新的变化,如果我们想得到需要的结果需要这样写:

ls=[1,2,3]
rs=map(str,ls)
print(list(rs))

这样显示的结果即为我们想要看到的。这一点在《机器学习实战》的第10章中会有一点帮助。

以上这篇解决Python3下map函数的显示问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python第三方库的安装方法总结

Python 是一门优雅的语言,简洁的语法,强大的功能。当然丰富的第三方库,更能加速开发。那么问题来了,如何安装这些第三方库(包)呢? 安装第三方库的方式其实不多。下面就介绍一些技巧。...

Python中的yield浅析

在介绍yield前有必要先说明下Python中的迭代器(iterator)和生成器(constructor)。 一、迭代器(iterator) 在Python中,for循环可以用于Pyt...

Python自动化开发学习之三级菜单制作

Python自动化开发学习之三级菜单制作

本文实例为大家分享了Python三级菜单展示的具体代码,供大家参考,具体内容如下 作业需求: (1)运行程序输出第一级菜单 (2)选择一级菜单某项,输出二级菜单,同理输出三级菜单 (3...

python安装gdal的两种方法

1.不用手动下载文件,直接执行以下命令即可 conda install gdal 2.首先,下载gdal的whl文件  链接, 官网下载比较慢,GDAL-2.2.4-cp27-...

python操作kafka实践的示例代码

python操作kafka实践的示例代码

1、先看最简单的场景,生产者生产消息,消费者接收消息,下面是生产者的简单代码。 #!/usr/bin/env python # -*- coding: utf-8 -*- impor...