python练习-itertools模块
2016-01-12 16:13
447 查看
”’
给定0123456+-*/ 任意排列使最后的结果等于2016
例如: 6/1+503*4-2 = 2016
要求:这7个数字和4个运算符号必须都用到且只能用一次,先后次序不限
(+)(-)可以当正负号 使用
”’
itertools模块简单整理
当函数返回true时则继续 当返回false时则停止。 1,2,3,4
当函数返回false时跳过 返回true时输出。6,7,8
组合函数
连接两个循环器
从’abc’中挑取2个元素排列 结果返回到一个新的迭代器。permutations()组合分顺序 ab,ba都返回
如果permutations()函数不加参数2,则会对’abc’进行全排列
从’abc’中挑取2个元素排列 结果返回到一个新的迭代器。combinations()组合不分顺序 ab,ba 只返回 ab
与上面类似 只是多了 重复的如: aa,bb,cc
给定0123456+-*/ 任意排列使最后的结果等于2016
例如: 6/1+503*4-2 = 2016
要求:这7个数字和4个运算符号必须都用到且只能用一次,先后次序不限
(+)(-)可以当正负号 使用
”’
import itertools def fun1(): list1 = '0123456+-*/' #permutations()函数用来排列组合list1中的元素将结果返回到一个迭代器 iter1 = itertools.permutations(list1) for i in iter1: temp = ''.join(i) # str.join(sequence) 将序列中的元素以指定的方式连接成一个新的序列 try: b = eval(zoo) # 计算表达式的结果 if 2016 == b: print(temp+' = 2016') except: a = 1 fun1()
itertools模块简单整理
ifilter()与filter()类似返回一个迭代器 ifilter(lambda x: x>5,[1,3,4,5,6,7,8]) 输出 6, 7 , 8 相反ifilterfalse(lambda x: x>5, [1,3,4,5,6,7,8]) 输入1,2,3,4,5
takewhile(lambda x: x<5,[1,3,4,5,6,7,8])
当函数返回true时则继续 当返回false时则停止。 1,2,3,4
dropwhile(lambda x: x>5,[1,3,4,5,6,7,8])
当函数返回false时跳过 返回true时输出。6,7,8
组合函数
chain([1,2,3],[4,5,6]) [1,2,3,4,5,6]
连接两个循环器
permutations('abc',2) [('a', 'b'), ('a', 'c'), ('b', 'a'), ('b', 'c'), ('c', 'a'), ('c', 'b')]
从’abc’中挑取2个元素排列 结果返回到一个新的迭代器。permutations()组合分顺序 ab,ba都返回
如果permutations()函数不加参数2,则会对’abc’进行全排列
combinations('abc',2) [('a', 'b'), ('a', 'c'), ('b', 'c')]
从’abc’中挑取2个元素排列 结果返回到一个新的迭代器。combinations()组合不分顺序 ab,ba 只返回 ab
combinations_with_replacement('abc',2) [('a', 'a'), ('a', 'b'), ('a', 'c'), ('b', 'b'), ('b', 'c'), ('c', 'c')]
与上面类似 只是多了 重复的如: aa,bb,cc
相关文章推荐
- Python动态类型的学习---引用的理解
- Python3写爬虫(四)多线程实现数据爬取
- 垃圾邮件过滤器 python简单实现
- 下载并遍历 names.txt 文件,输出长度最长的回文人名。
- install and upgrade scrapy
- Scrapy的架构介绍
- Centos6 编译安装Python
- 使用Python生成Excel格式的图片
- 让Python文件也可以当bat文件运行
- [Python]推算数独
- Python中zip()函数用法举例
- Python中map()函数浅析
- Python将excel导入到mysql中
- Python在CAM软件Genesis2000中的应用
- 使用Shiboken为C++和Qt库创建Python绑定
- FREEBASIC 编译可被python调用的dll函数示例
- Python 七步捉虫法