2017-02-09 78 views
-5

我试图让这个程序来检查用户是否登陆宝藏广场,如果他们确实得到了黄金。此外,宝藏只能登陆3次,直到变成强盗,因此每次玩家登陆之后,牌的名称都会改变为T2T3B。每当我尝试运行我的代码时都会出现一条错误消息can't assign to literal我得到一个错误,说'不能分配到文字'

这是我的代码:

+5

你能发表一些代码吗?这种方式没有人可以帮助你 –

+1

请保持意见高效,显然这是用户的第一篇文章,我们都是在一个时间点的初学者,是友好和建设性的 – Nate

+0

注意:http://stackoverflow.com/questions/15112125/我怎么做我测试一个变量对多个值 – jonrsharpe

回答

1

你试试这样做:

'T1' = 'T2' 

导致插件:

'T1' = 'T2' 
      ^
SyntaxError: can't assign to literal 

您不能将一个字符串文字到另一个。

你可以做这样的事情:

Grid[oldYpos][oldXpos] = 'T2' 

if声明:

if Grid[oldYpos][oldXpos] == 'T1': 
    Grid[oldYpos][oldXpos] = 'T2' 
elif Grid[oldYpos][oldXpos] == 'T2': 
    Grid[oldYpos][oldXpos] = 'T3' 
elif Grid[oldYpos][oldXpos] = 'T3': 
    Grid[oldYpos][oldXpos] = 'B' 

也能更好的改变:

if Grid[oldYpos][oldXpos] == 'T1' or 'T2' or 'T3': 

在:

if Grid[oldYpos][oldXpos] in ['T1', 'T2', 'T3']: 
+0

谢谢,现在都在工作。 –

+0

非常有帮助。顺便说一句,你可以[接受](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)一个答案,如果它解决了你的问题。 –

相关问题