很抱歉打扰你我的愚蠢。。。我找不到itertools.permutation是如何工作的,输出很奇怪!它应该返回所有可能的组合,比如一个为输出定义了长度的bruteforece(a,b,c,…,aa,ab,ac..,aaa,aab,aac…是一个brutefore,以3作为长度的排列示例:aaa,aab,aac…dee,def,deg,…zaa,zab,zac…(,不是吗?
但如果我使用"0123456789",有时会缺少值,比如040613,即使在全球范围内我得到了大量值,也会缺少很多值。那么它是如何工作的呢?
如果你想要规格,我试着以050520的格式获取所有可能的日期,例如(2020年5月2日(。但如果日期不见了。。。
我的代码:
from itertools import permutations #or combinations
def dates(charset, maxlength):
return (''.join(candidate) for candidate in permutations(charset, maxlength))
print(list(dates("0123456789", 6)))
感谢所有愿意帮助我的人,祝你今天愉快!
"0123456789"的排列不包括"040613",因为这个数字需要零标记的2。
例如:
>>> list(permutations("123", 3))
[('1', '2', '3'), ('1', '3', '2'), ('2', '1', '3'), ('2', '3', '1'), ('3', '1', '2'), ('3', '2', '1')]
不包含"333"或"313">