0
私はプロジェクトのためにpythonを使ってパスワード推測をしようとしています。しかし、私は立ち往生してしまった。現在私が使用しているコードがあります。グローバルなPythonの問題?
apple1
apple2
apple3
apple4
apple5
apple6
apple7
apple8
apple9
apple10
ate1
ate2
など:私は、コードを実行すると
dictfile = open('c:/PC/wordsEn.txt', 'r')
DictionaryWords = dictfile.readlines()
Password = 'zygote10'
Intadd = 0
def Number_Finder():
for x in DictionaryWords:
global Intadd
print(x .replace("\n", str(Intadd)))
if x .replace("\n", str(Intadd)) == Password:
print("Congrats, you found the password!")
break
else:
while Intadd < 10:
Intadd += 1
print(x.replace("\n", " ") + str(Intadd))
def Password_Tester():
for x in DictionaryWords:
if x .replace("\n", "") == Password:
print('Found it!', x, 'is the password!')
break
else:
Number_Finder()
Password_Tester()
は、私はこのような何かを見たいと思っています。 (基本的には、コードが単語を実行し、その数が10に達するまで毎回番号を変更してから、単語を変更してからプロセスを繰り返す)。
しかし、私は、コードを実行したとき、私はこれを参照してください。
apple1
apple2
apple3
apple4
apple5
apple6
apple7
apple8
apple9
apple10
ate10
aviation10
(リンゴの後、単語は1から10まで行くのプロセスを繰り返していない、と言葉だけで数によって変化します10 after it)
私はこの問題がグローバルコマンドにあると思います。私はPythonをかなり新しくしているので、明らかな解決策があれば申し訳ありません。みんなありがとう!
ですから、 'Intadd'再び0に設定されていますか?関数が終了したときに0に戻ることを期待しましたか?それはグローバルがどのように機能するかではありません。 –
'wordsEn.txt'の内容は何ですか?グローバル変数リストに含まれる少数の文字列で動作するこのコードの簡略版を書くと役に立ちます。 – Tagc