2016-10-23 20 views
-3

私はスロットマシンを作成する課題があります。私はマシンを回転させるループを書こうとしていますが、私のリストは呼び出し可能ではないと言っています。私は問題を抱えていますのはここリストオブジェクトが呼び出せません

だ:

wheel1 = ['Candy','Ghost','Pumpkin','Cat','Zombie','Witch','Witch','Cat','Ghost','Candy'] 
wheel2 = ['Candy','Ghost','Pumpkin','Cat','Zombie','Witch','Cat','Pumpkin','Ghost','Candy'] 
wheel3 = ['Candy','Ghost','Pumpkin','Cat','Zombie','Witch','Pumpkin','Candy','Candy','Ghost'] 

#loop to spin 
i = 0 

while i < 500: 
    spin1 = random.randint(0,9) 
    spin2 = random.randint(0,9) 
    spin3 = random.randint(0,9) 
    print(str[wheel1(spin1)]) 
    i += 1 

を私は多分ブラケットが間違っていた空間にあった考え出したが、私はどこにもそれらを配置する場合、私は、構文エラーが発生します。

+1

'wheel1'はリストで、ブラケット(演算子)を使用してリスト要素にアクセスします。 wheel1(spin1)の代わりに 'wheel1 [spin1]'でなければなりません。そして 'str'の呼び出しはかっこを使うべきですので、あなたのprintステートメントは' print(str(wheel1 [spin1])) ' – UnholySheep

答えて

0

print(str[wheel1(spin1)])print(str(wheel1[spin1]))で行を更新してください。

wheel1()を実行すると、pythonはそれを関数として扱い、関数を呼び出そうとします。しかし、あなたはlistを持っていて値にアクセスしたいので、構文はwheel1[i]です。ここで、iはアクセスしたいインデックスです。

また、str[..]を実行していますが、前述の理由と同じ理由でstr(..)にする必要があります。

+1

でなければなりません。完全に修正しました。 – ALLCAPS

関連する問題