2017-09-28 18 views
0

これを実行しようとすると、最初の印刷行で構文エラーが発生するのはなぜですか?ここでこれがなぜうまくいかないのかを理解するために助けが必要

def dice(): 
    import random 
    diceAmount = input('How many dice (Up to 5)') 
    diceNumbers = [1,2,3,4,5,6] 
    if diceAmount > 1: 
     die = "die" 
    else: 
    die = "dice" 
    diceTotal = (math.factorial(6)/((math.factorial(6- 
    random.choice(diceNumbers))*math.factorial(random.choice(diceNumbers))) 

    print("You chose " +diceAmount + die) 
    print(diceTotal*diceAmount) 
dice() 
+1

であなたのコードのインデントを修正してください。 – stamaimer

+1

かっこをチェックし、コードの再編成を強く検討して、必要なものを減らしてください。 – user2357112

+1

'else:'の後の行はインデントしなければなりません。 –

答えて

0

は、固定コード

def dice(): 
    import random 
    import math 
    diceAmount = input('How many dice (Up to 5)') 
    diceNumbers = [1,2,3,4,5,6] 
    if diceAmount > 1: 
     die = "die" 
    else: 
     die = "dice" 
    diceTotal = math.factorial(6)/math.factorial(6-random.choice(diceNumbers))*math.factorial(random.choice(diceNumbers)) 

    print "You chose " +diceAmount + die 
    print diceTotal*diceAmount 
dice() 
+0

ありがとうございます。それは –

+0

作品を投票してください忘れないでください:) – songxunzhao

関連する問題