1.今天简单介绍下生成数字排列组合的代码。
2.实现
import sys
import string
import itertools
## 原数字字符
SRC = '1234567890'
def get_strings():
chars = string.printable[:10]
strings = []
for i in range(min, max + 1):
strings.append((itertools.product(SRC, repeat=i),))
return itertools.chain(*strings)
min = 3 # 生成的最小位数
max = 7 ## 最大位数
list_str = get_strings()
for it in list_str:
for y in it:
## 结果是3467278 就表示找到了
if '3467278' == "".join(y):
print("".join(y))
break
3.我的机器运行大概3秒就找出了,当然这里只是玩玩,加上字母的话 估计要等很久很久…..
老生常谈:深圳有爱好音乐的会打鼓(吉他,键盘,贝斯等)的程序员和其它职业可以一起交流加入我们乐队一起嗨。我的QQ:657455400