Python:Can';不分配给操作员
为一个游戏编写一个战斗序列,这个错误显示在底线上,实际的算法应该发生在哪里,并在后台应用。我假设这是一个和算术方法有关的错误Python:Can';不分配给操作员,python,math,operator-keyword,assign,Python,Math,Operator Keyword,Assign,为一个游戏编写一个战斗序列,这个错误显示在底线上,实际的算法应该发生在哪里,并在后台应用。我假设这是一个和算术方法有关的错误 if choice == 'A': print(curChar[NAME] + "attacks!") attackHit = True if WEAPON_ACCURACY < 100: if roll() > WEAPON_ACCURACY: attac
if choice == 'A':
print(curChar[NAME] + "attacks!")
attackHit = True
if WEAPON_ACCURACY < 100:
if roll() > WEAPON_ACCURACY:
attackHit = False
print(curChar[NAME], "'s attack missed!")
else:
attackHit == True
print(curChar[NAME], "'s attack landed and dealt", curChar[STRENGTH] + curChar[WEAPON_DAMAGE] - curEnemy[HEALTH] + curEnemy[ARMOR], "damage!")
**curChar[HEALTH] + curChar[ARMOR] - curEnemy[STRENGTH] - curEnemy[WEAPON_DAMAGE] = curChar[HEALTH]**
if choice==“A”:
打印(curChar[NAME]+“攻击!”)
attackHit=True
如果武器精度<100:
如果掷骰()>武器精度:
攻击命中=错误
打印(curChar[NAME],“'s attack missed!”)
其他:
attackHit==真
打印(curChar[姓名],“攻击落地并处理”,curChar[力量]+curChar[武器伤害]-治疗[生命]+治疗[护甲],“伤害!”)
**curChar[生命]+curChar[护甲]-治疗[力量]-治疗[武器伤害]=curChar[生命]**
注意分配变量的顺序。目标在左边,计算在右边
curChar[HEALTH]=curChar[HEALTH]+curChar[ARMOR]-curEnemy[STRENGTH]-curEnemy[language\u DAMAGE]
不相关,但这句话也错了:“attackHit==True”,你只需要一个等号就可以了。但是,如果你删除了“attackHit=True”这两行中的任何一行,你的代码的工作原理都是一样的。另外,如果护甲很高,那么被击中可能会增加玩家的健康!相反,尝试curChar[HEALTH]=max(0,curEnemy[STRENGTH]+curEnemy[wealth\u DAMAGE]-curChar[ARMOR]
分配给加法意味着什么?这是大多数编程语言通用的基本语法,您只能分配给变量,不能分配给计算(Prolog是一个例外,它能够通过将计算视为逻辑等价物来反转计算)。