Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python计算给定字符的所有可能组合_Python_Passwords_Wifi_Combinations_Wpa - Fatal编程技术网

python计算给定字符的所有可能组合

python计算给定字符的所有可能组合,python,passwords,wifi,combinations,wpa,Python,Passwords,Wifi,Combinations,Wpa,我正在尝试制作一个程序,计算给定字符的所有可能组合,用于ABCDEFGHIjklmnopqrstuvxyzabCDEFGHIjklmnopqrstuvxyz1234567890。。。但是只有8个点,AAAAA,AAAAA,AAAAA 像这样的开始 对于X范围内的i(99999999): 对于j in[(i//d)%36对于d in(63,54,45,36,27,9,3,1)]) 我发现我的工作在上面 谢谢你的帮助 mystring = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabc

我正在尝试制作一个程序,计算给定字符的所有可能组合,用于ABCDEFGHIjklmnopqrstuvxyzabCDEFGHIjklmnopqrstuvxyz1234567890。。。但是只有8个点,AAAAA,AAAAA,AAAAA

像这样的开始

对于X范围内的i(99999999):

对于j in[(i//d)%36对于d in(63,54,45,36,27,9,3,1)])

我发现我的工作在上面 谢谢你的帮助

mystring = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890'
from itertools import product
combos = [''.join(i) for i in product(mystring, repeat = 8)]
type(combos)
返回组合的列表


返回组合列表。

这可能需要一段时间才能运行,因为有很多可能的排列。所以事先要知道。我的解决方案:

from itertools import permutations

options = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890'
possibilities = [w for w in permutations(options, 8)]

这将列出存储在“可能性”变量中的所有可能密码。

这可能需要一段时间才能运行,因为可能存在许多排列。所以事先要知道。我的解决方案:

from itertools import permutations

options = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890'
possibilities = [w for w in permutations(options, 8)]

这将列出存储在可能性变量中的所有可能密码。

我的小生成器算法:

def combinator(karakterler, uzunluk):
    l = len(karakterler)
    for i in range(l ** uzunluk):
        s = ""
        for j in range(uzunluk):
            i, index = divmod(i,l)
            s += karakterler[index]
        yield s

for i in combinator("abc",3): print(i)

我的小生成器算法:

def combinator(karakterler, uzunluk):
    l = len(karakterler)
    for i in range(l ** uzunluk):
        s = ""
        for j in range(uzunluk):
            i, index = divmod(i,l)
            s += karakterler[index]
        yield s

for i in combinator("abc",3): print(i)


你试过什么?你有密码吗?如果你的问题清楚、简洁、具体,我们就能够最好地回答你的问题。我学离散数学已经有一段时间了,但如果我没记错的话,你在这个集合中有218万亿个组合。。。。。这将需要几天的时间来计算一台普通电脑。。。如果你仍然想完成这项工作,你需要更具体地说明你需要什么。这背后的数学和算法有问题吗?或者在实现一个能容纳218万亿个对象的数据结构时遇到麻烦?@BrennenSprimont我在代码方面遇到了麻烦。我更新了我的问题来说明我的意思。你尝试了什么?你有密码吗?如果你的问题清楚、简洁、具体,我们就能够最好地回答你的问题。我学离散数学已经有一段时间了,但如果我没记错的话,你在这个集合中有218万亿个组合。。。。。这将需要几天的时间来计算一台普通电脑。。。如果你仍然想完成这项工作,你需要更具体地说明你需要什么。这背后的数学和算法有问题吗?或者在实现一个能容纳218万亿个对象的数据结构时遇到麻烦?@BrennenSprimont我在代码方面遇到了麻烦。我更新了我的问题以显示我的意思。很好,但可能是这样的东西,但对于xrange(81)中的I更大:print'.join(['abcd'[j]表示j in[(I//d)%3表示d in(27,9,3,1)])我将其从itertools导入产品组合=[''.join(I)表示I in产品(mystring,repeat=2)]更改为mystring='AB'打印组合,现在它可以工作了,但是打印出来的是['AA'、'AB'、'BA'、'BB'],没有括号、引号和逗号,我怎么能把它打印出来呢。如果它有空格就可以了。它正在创建一个列表。单引号表示它们是字符串。逗号表示列表中项目的结束/开始位置。你可以从一个列表中找到答案。你不想要一份清单吗?您想要什么类型的对象?是的,我想要一个listNice,但可能是类似这样的东西,但对于xrange(81)中的I更大:print'.join(['abcd'[j]表示j in[(I//d)%3表示d in(27,9,3,1)])中的d),我将其从itertools导入产品组合=[''.join(I)表示产品中的I(mystring,重复=2)]打印组合,现在它可以工作了,但是打印出来的是['AA'、'AB'、'BA'、'BB'],没有括号、引号和逗号,我怎么能把它打印出来呢。如果它有空格就可以了。它正在创建一个列表。单引号表示它们是字符串。逗号表示列表中项目的结束/开始位置。你可以从一个列表中找到答案。你不想要一份清单吗?你想要什么类型的对象?是的,我想要一个列表我得到了一个类似这样的错误回溯(最近一次调用上次):File“/Users/*****/Documents/untitled”,第4行,in-posabilities=[w for w in-permutations(options,8)]memoryerror这可能是因为有太多的排列,你的内存不足。如@Brennon Sprimont所说,有大量可能的排列。我试图将其缩短为>选项='AB',但什么也没有发生。您是否将排列中的8更改为2?添加
打印可能性
,这样您就可以看到列表。我得到了一个类似此回溯的错误(最近一次调用):File“/Users/*****/Documents/untitled”,第4行,在可能性中=[w代表排列中的w(选项,8)]内存错误这可能是因为排列太多,导致内存不足。如@Brennon Sprimont所说,可能存在大量的排列。我试图将其缩短为>选项='AB',但什么也没有发生。您是否将排列中的8更改为2?添加
打印可能性
,以便查看列表