python求素数
2015-06-11 15:00
1026 查看
sfunc = lambda max:filter(lambda x:all(map(lambda xx:x%xx,range(2,x))),range(2,max)) sfunc(100) [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回。
filter()也接收一个函数和一个序列。和map()不同的时,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素。
all()函数接受一个Iterable,如果Iterable的所有元素不为0、''、False或者Iterable为空,返回True,否则返回False;
lambda x:x 表示匿名函数,冒号前面的x表示函数参数。匿名函数有个限制,就是只能有一个表达式,不用写return,返回值就是该表达式的结果。
相关文章推荐
- Python 安装pythoncom、pyHook
- win7 x64环境python2.7下装配sulley的注意点-对于Windows Installation原文的几点补充说明
- 轻松自动化---selenium-webdriver(python) (二)
- 轻松自动化---selenium-webdriver(python) (一)
- Python排序介绍
- Python sys.argv的用法
- Python 2.7 Data Type for Text Strings: Unicode and Str
- W32 python+selenium环境配置
- python入门
- 网络端口的转发和重定向(Python)
- Python标准库13 循环器 (itertools)
- 10 Python Optimization Tips and Issues
- python selenium 总结
- python扩展
- python脚本积累
- python日志模块
- windows下python画图matplotlib
- Python 时间和日期模块的常用例子
- Python正则表达式
- Python WxPython 的安装以及使用