擅长:python、mysql、java
<p>如果您想要一个<em>类方法</em>,最好是这样:</p>
<pre><code>@classmethod
def decreaseHealth(cls):
...
</code></pre>
<p>然后可以调用<code>Monster.decreaseHealth</code>,并且可以使用<code>cls.</code>(例如<code>cls.health</code>)访问类变量。但是,然后,您将在与类本身相关联的“全局”状态上进行操作。你知道吗</p>
<p>你可能想为你的怪物做一个<em>实例</em>:</p>
<pre><code>class Monster:
''' Base class for monsters '''
class Snake(Monster):
def __init__(self):
self.name = "Snake"
self.health = 100
def decreaseHealth(self):
self.health -= 4
if self.health <= 0:
print("dead")
mysnake = Snake()
mysnake.decreaseHealth()
</code></pre>