Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:Can';不分配给操作员_Python_Math_Operator Keyword_Assign - Fatal编程技术网

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是一个例外,它能够通过将计算视为逻辑等价物来反转计算)。