2017-02-16 7 views
-3

私はPythonにはかなり新しく、 "クラッカー"(実際にはすべての可能な組み合わせを書き込むプログラム)を書こうとしました。"クラッカー"を書こうとしましたが、OFCは動作しませんでしたが、私はそれが可能だと思います。

私はlinecacheを使用し、その後whileループ(非常に多く)を使用しました。

アイデアは、AZと0-9文字で辞書を作ることだったし、その後の文字を取得し、一緒に

を入れlinecache使用して(これは変更のみ2文字で働いていたが、私は8つの文字をしようとしたとき... )

私は、Pythonに新しいですように私は本当にintendationと友人ではないけど、何とか私はそれが動作するように作らしかし...

問題はそれを行うことはありませんされています

print("ITS HERE") 

................................................ ................................

import easygui 
import time 
import linecache 



x1=1 
x2=1 
x3=1 
x4=1 
x5=1 
x6=1 
x7=1 
x8=0 
p=0 

while p!=36: 
p=p+1 
while x1!=36: 
    while x2!=36: 
     while x3!=36: 
      while x4!=36: 
       while x5!=36: 
        while x6!=36: 
         while x7!=36: 

          while x8!=36: 
           x8=x8+1 

           Char1=linecache.getline("Dictionary.txt",x1).rstrip("\n") 
           Char2=linecache.getline("Dictionary.txt",x2).rstrip("\n") 
           Char3=linecache.getline("Dictionary.txt",x3).rstrip("\n") 
           Char4=linecache.getline("Dictionary.txt",x4).rstrip("\n") 
           Char5=linecache.getline("Dictionary.txt",x5).rstrip("\n") 
           Char6=linecache.getline("Dictionary.txt",x6).rstrip("\n") 
           Char7=linecache.getline("Dictionary.txt",x7).rstrip("\n") 
           Char8=linecache.getline("Dictionary.txt",x8).rstrip("\n") 
           print(Char1+Char2+Char3+Char4+Char5+Char6+Char7+Char8) 
           time.sleep(0.25) 


           if x2==36: 
            x1=x1+1 
            x2=0 
           if x3==36: 
            x2=x2+1 
            x3=0 
           if x4==36: 
            x3=x3+1 
            x4=0 


           if x5==36: 
            x4=x4+1 
            x5=0 
           if x6==36: 
            x5=x5+1 
            x6=0 
           if x7==36: 
            x6=x6+1 
            x7=0 
           if x8==36: 
            x7=x7+1 
            x8=0 






time.sleep (60000) 
+0

私が何かを紛失していない限り、8分の1を4で割った値(0.25秒の睡眠)は、最悪の場合のシナリオでは8,000千年を超えています。つまり、 'x7'は' while x7!= 36: '、無限ループ内で決して変化しません。私は[公式のPythonチュートリアル](https://docs.python.org/3.6/tutorial/index.html)をお勧めします。 – TigerhawkT3

+0

どのように?それは私によく見え、私は半日それを見ている、奇跡であるか、または私より経験豊かな誰かの助けを借りなければならなかった – CandyKing

+1

本当にそれをゆっくりと非効率にしたくない限り、itertools.permutationsを見てください。 –

答えて

0

ここでは、千年制xD

import easygui 
import time 
import linecache 



x1=1 
x2=1 
x3=1 
x4=1 
x5=1 
x6=1 
x7=1 
x8=1 


while x8!=36: 


    Char1=linecache.getline("AlgoDictionary.txt",x1).rstrip("\n") 
    Char2=linecache.getline("AlgoDictionary.txt",x2).rstrip("\n") 
    Char3=linecache.getline("AlgoDictionary.txt",x3).rstrip("\n") 
    Char4=linecache.getline("AlgoDictionary.txt",x4).rstrip("\n") 
    Char5=linecache.getline("AlgoDictionary.txt",x5).rstrip("\n") 
    Char6=linecache.getline("AlgoDictionary.txt",x6).rstrip("\n") 
    Char7=linecache.getline("AlgoDictionary.txt",x7).rstrip("\n") 
    Char8=linecache.getline("AlgoDictionary.txt",x8).rstrip("\n") 
    print(Char1+Char2+Char3+Char4+Char5+Char6+Char7+Char8) 
    time.sleep (0.1) 
    x8=x8+1        

    if x2==36: 
     x1=x1+1 
     x2=1 
    if x3==36: 
     x2=x2+1 
     x3=1 
    if x4==36: 
     x3=x3+1 
     x4=1 
    if x5==36: 
     x4=x4+1 
     x5=1 
    if x6==36: 
     x5=x5+1 
     x6=1 
    if x7==36: 
     x6=x6+1 
     x7=1 
    if x8==36: 
     x7=x7+1 
     x8=1 
関連する問題