Why is 'module' object not callable?
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
TypeError: ‘module’ object is not callable
号
这是我第一次尝试使用Python,只是在我用一种新语言python沉默了10年之后,试图重新获得基本的编程知识。基本的想法是一个小的疯狂引擎,决定更好的打击。接下来是窃听代码。
1 | self.__power = self.__att*random(2,4)/dier.__defn |
因为我对python的了解非常基础,所以我很害怕说出正确的话,所以我会把代码放在下面(47行),你会发现它确实是超偏执的,所以我不怀疑这会带来任何问题。误差线是16。我尝试将att变量重命名为atta以及一些重新定位,尽管出现了新的bug,但我解决了它们,最后在同一行中始终存在相同的错误。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | class Character: def __init__(self,name="", att=0,defn=0,lvl=0,leven=0,exp=0, power=0): self.__att = att self.__defn = defn self.__lvl = lvl self.__leven = leven self.__name = name self.__xp = exp self.__power = power def batl(self): import random while self.__lvl <= 3: dier = Character("Anaconda",1,1,50,1,0,0) print"You encountered an" + dier.__name +" and fight it." **self.__power = self.__att*random(2,4)/dier.__defn** dier.__power = (dier.__att*random(1,4))/self.__defn if self.power > dier.power: growth = dier.__lvl*dier.__atta groei() else: dmg = dier.lvl*dier.att leven = leven-dmg if leven < 0: print"Alas, you're done for." exit() else: print"You took" + dmg +"damage and have" + leven +"life left." def groei(self): if (growth+exp) > 100: lvl += 1 exp = growth-100 print"You won and gained" + str(growth) +" and grew from level" + str(lvl-1) +" to level" + str(lvl) +"." else: exp = growth + exp print"You won and gained" + str(growth) +"." |
号
def主():
1 2 | hero = Character("Nevery",2,1,2,100,0,0) hero.batl() |
如果name='main':主体()
如您所见,我得到了我的character类,其中我定义了battle()方法和groei()方法,非常基本。有人能指出我错过了什么吗?我已经看了好几个小时了。提前谢谢
用