2016-10-04 100 views
-3

我正在嘗試做一個簡單的猜謎遊戲作爲一個學校作業。我開始使用一個長版本,並試圖通過使用循環使其更短,但我得到了一個無法分配給第13行的操作員錯誤,這在我嘗試執行A1 + 1 = A1時不明白。不能分配給操作員錯誤

import sys 
import random 

A1 = 1 
A2 = 2 
A3 = 1 
Array=[] 
Len = int(input("How long do you what the game to be")) 
for x in range(11): 
G = random.randint(1,13) 
Array.append(G) 
for x in range(Len): 
    A1 + 1 = A1 
    A2 + 1 = A2 
    A3 + 1 = A3 
print(Array[A3]) 
Num = Array[A3] 
G1 = input("Is the next number higher or lower.") 
if Array[A1] - Array[A2] > 1: 
    print("Correct") 
    print("_______________________________________________________________________________") 
else: 
    print("YOu FaIl") 
    print("_______________________________________________________________________________") 
    sys.exit() 
print("Well done you have won the game CONGRATS!") 
+2

我認爲你的意思'A1 + = 1'? –

+1

'A1 + 1 = A1'你的理解應該在這裏發生什麼? –

+2

您必須瞭解賦值運算符。左側是受讓人,右側是分配給受讓人的價值。另外,如果你從邏輯上看代碼,你怎樣才能給一個不同的值賦一個常量(一個數字)? – Li357

回答

3

作業去<variable> = <expression>,而不是相反。

這可更換

for x in range(Len): 
    A1 + 1 = A1 
    A2 + 1 = A2 
    A3 + 1 = A3 

通過這個(假設你想添加一個到每個這些變量的Len倍)

A1 += Len 
A2 += Len 
A3 += Len 
相關問題