我对如何将函数中设置的变量传递给类中的方法感到很困惑。
以下是相关代码:
<body ng-controller="MainCtrl">
<div>{{noOfPages}} {{currentPage}} {{maxSize}}
<pagination ng-model="currentPage" total-items="bodynews.length" items-per-page="5"></pagination>
</div>
<div class="alert alert-info" ng-repeat="tic in bodynews">
{{tic}}
</div>
</body>
我在程序开头用这一行创建了class monster():
def __init__(self, health, name):
print(name + " has been born!")
self.name = name
self.health = health
self.stats(name, health)
def stats(self, name, health):
self.name = name
self.health = health
print(self.name + " - " + str(self.health) + " HP")
的实例:
monster()
但是,你可以看到函数gameMonster = monster(20, name)
应该显示怪物的名称和健康,这是之前设置的。游戏处于循环,因此stats()
函数将在每次&#34;转动&#34;后调用。但是,我需要将变量stats()
和name
传递给health
才能显示它们,但似乎无法弄清楚如何。
我的问题是:
如何将在初始化方法时声明的变量传递给同一类中的另一个方法?
任何帮助表示感谢。
答案 0 :(得分:3)
您不需要再次设置它们,它们已经存在于实例中:
class Monster(object):
def __init__(self, health, name):
print(name + " has been born!")
self.name = name
self.health = health
self.stats()
def stats(self):
print(self.name + " - " + str(self.health) + " HP")
用法:
>>> monster = Monster(20, 'Boris')
Boris has been born!
Boris - 20 HP
>>> monster.stats()
Boris - 20 HP
>>> monster.health -= 5
>>> monster.stats()
Boris - 15 HP