【发布时间】:2017-02-13 03:49:48
【问题描述】:
我正在尝试制作一个简单的猜谜游戏作为学校作业。我从一个长版本开始,并试图通过使用循环来缩短它,但我在第 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!")
【问题讨论】:
-
我想你的意思是
A1 += 1? -
A1 + 1 = A1在你的理解中应该发生什么? -
你必须了解赋值运算符。左侧是受让人,右侧是要分配给受让人的值。另外,如果从逻辑上看代码,如何将常量(数字)赋给不同的值?
-
顺便说一句,如果用户输入大于 11 的数字,您将获得索引越界错误。我认为您的意思是
for x in range(Len):。使用大写字母命名变量是违反 Python 设计指南的(例如Array)。
标签: python python-3.x variable-assignment