2016-11-02 25 views
-7

私はPythonには新しく、リストと辞書を使った練習のための簡単なパスワードクラッカーに取り組んでいました。テストプログラムの途中でこのエラーが発生しました。ここでPython - なぜ+ =演算子が動作しないのですか

PS E:\python_projects> python test.py 
    File "test.py", line 9 
    global counter += 1 
        ^
SyntaxError: invalid syntax 

コードが他のエラーも、それは大丈夫ですが、私は+ =私は私の思っていることにハングアップ取得していますなぜ私は理解していないことがあります...

maxChar = 4 
counter = 0 
alph = ['A','B','C','D','E','F','G'] 
passCheck = [] 
password = 'f' 
password = str(password.lower()) 

def loopTest(): 
    global counter += 1 

    if counter <= maxChar: 
     loopTest() #Nests loops 

    else: 
     for letter in alph:  #scans letters 
      passCheck[0] = letter 

      if passCheck == password: #checks password 
       print 'found password: ' + passCheck 

      else: 
       print passCheck 

loopTest() 

print 'Debug.' 
print counter 

ですとにかく見てくれてありがとう!

+2

あなたは 'はGlobal'を使用する方法はないこと。 –

+0

これは構文エラーです。私は 'global'がどのように使用されるべきかを見て、宣言や何かをすることができない理由を見てみましょう – TankorSmash

+0

ベストプラクティス:' global'を取り除き、パラメータと戻り値を使用する。 – Matthias

答えて

1

あなたPythonで混合二つの異なる考え方、"global statement""augmented assignment statement."

A "global文は、" 非常に単純な構文を持っています

"global" identifier ("," identifier)* 

ませ式がglobal文で許可されていません。

はおそらく、あなたが言いたいこと:

global counter 
counter += 1 
+0

ああ大丈夫私はあなたに感謝してみましょう! – Sam

関連する問題