如何在python3.3用 map filter reduce
来源:互联网 发布:手机淘宝怎么改密码 编辑:程序博客网 时间:2024/04/30 16:40
在3.3里,如果直接使用map(), filter(), reduce(), 会出现
>>> def f(x): return x % 2 != 0 and x % 3 != 0
>>> filter(f, range(2, 25)) <</span>filter object at 0x0000000002C14908>
>>> def cube(x): return x*x*x
>>> map(cube, range(1, 11)) <</span>map object at 0x0000000002C82B70> >>> defadd(x,y): return x+y
>>> reduce(add, range(1, 11)) Traceback (most recent call last): File "", line 1, in<</span>module> reduce(add, range(1, 11)) NameError: name 'reduce' is not defined
这种情况是因为在3.3里面,map(),filter()这些的返回值已经不再是list,而是iterators, 所以想要使用,只用将iterator 转换成list 即可, 比如 list(map())
而reduce已经取消了,如想使用,可以用fuctools.reduce来调用。但是要先导入fuctools, 即输入:import fuctools
e.g1
>>>
sentence = 'It is raining cats and dogs'
>>>
words = sentence.split()
>>>
print words
['It', 'is', 'raining', 'cats', 'and', 'dogs']
>>>
>>>
lengths = map(lambda word: len(word), words)
>>>
print (list(lengths))
[2, 2, 7, 4, 3, 4]
e.g2
>>> import functools
>>> def add(x,y): return x+y ...
>>> functools.reduce(add, range(1, 11)) 55
0 0
- 如何在python3.3用 map filter reduce
- 如何在python3.3用 map filter reduce
- python3 中的 map,reduce,filter函数
- python3中使用map,reduce和filter
- python3中的map,filter,reduce函数解析
- python3-map,filter,reduce,lambda函数
- python3 中的 map,reduce,filter函数
- python3中使用map,reduce和filter
- map,reduce,filter之python2,python3区别
- Python3.4中filter函数,map函数和reduce函数
- Python3.4中filter函数,map函数和reduce函数
- Python3.4中filter函数,map函数和reduce函数
- Python学习笔记: Python3中map、filter、reduce函数
- python3 常见函数 map、reduce、filter、lambda、sorted
- Python3中的高阶函数(map,reduce,filter,sorted)
- filter,map,reduce
- filter,map,reduce
- python:map filter reduce
- SVN如何管理多项目
- 关于TTS语音合成技术整理
- HTML转义字符
- lua 库路径
- spring quartz实例及下载包
- 如何在python3.3用 map filter reduce
- 实例解析linux内核I2C体系结构(1)
- 如何用普通电脑去看3D电影
- AChartEngine的图表中捕获点击事件和点击位置
- Java 数据转换
- NSRunLoop 学习
- iOS 网络编程(1)
- Thinking in Java static
- Android音频系统探究——从SoundPool到AudioHardware