2017-10-19 10 views
1
def parentMenu(): 
    for _num in menu1_list: 
     print menu1_list 
    prompt="Please Choose a sub menu" 
    text1=raw_input(prompt) 
    if text1 = 1: 
     menu1_1() 
    elif text1 =2: 
     menu1_2() 
    elif text1 =3: 
     menu1_3() 
    else: 
     print "Incorrect!" 
     parentMenu() 

このコードは、if text1 =1:の行にunindent does not match any outer indentation levelというエラーが発生しています。 他のものをさらにインデントすると、予期しないインデントが発生します。Python関数のインデントエラー

このすべては、メニューを表示することで、ユーザーは1を選択し、同じ機能になると仮定され、2、3

raw_inputの下に表示されてif文での問題ですか?私は前にユーザーの入力を使用していないし、後に続くものがわからない。

+1

を得たあなたは、スペースを混合されており、タブ?それを確認してください。 – Antimony

+0

if条件も修正する必要があります。等価性をチェックする正しい方法は、 'if text1 = 1:'のように '=='を使うことです。単一の '= 'は値を代入することです。 – Antimony

+0

あなたの返信Antimonyありがとう。あなたは正しいです、==を忘れて、それを修正しました。はい、私はスペースとタブと混同していると思います。私は崇高なテキスト3を使用しています。これは、Python用に設定されています。関数の最初の行の後にenterを押すと、その間隔に従うように試みました。私は次のような行を信じています:再び間隔を置く必要があります。しかし、どのくらいの間隔にはわからない。むしろ混乱します。私のコードを適切な間隔で書いているかどうか尋ねるのは気になるでしょうか?非常に高く評価されるだろう。 – Daza99

答えて

0

私は フォーマット、あなたの関数のコード全体を選択し、トップメニューから選択 - >それが必要だったwhereever DEDENT領域広告はその後、ちょうどスペースを与え、私はこの作業を正しく

def parentMenu(): 
    for _num in menu1_list: 
    print (menu1_list) 
    prompt="Please Choose a sub menu" 
    text1=raw_input(prompt) 
    if text1 == 1: 
    menu1_1() 
    elif text1 ==2: 
    menu1_2() 
    elif text1 ==3: 
    menu1_3() 
    else: 
    print ("Incorrect!") 
    parentMenu() 
+0

ありがとうShikha!それを固定した視覚的な学習者の多くは、何かが行われていると思われることを見て、情報のオーバーフロー以上に役立ちます。私は上記のスペースがインデントよりも多く使われているのを見て、スペースではなくインデントをいつ使うのかを詳しく読んでいます。あなたがトップメニューを選択したとき、フォーマット - >割り当て領域。あなたは何を指していましたか?私はあなたがそれを使用していたと述べたので、最初は私はあなたが崇高なテキストのIDEで意味だと思ったが、私は上部に書式オプションが表示されません。しかし、私は主要な構文としてPythonを選択しています。 – Daza99

関連する問題