私はPythonとプログラミング全般に不慣れなので、この点についての説明をいただければ幸いです。
たとえば、次のコードでは次のようになります。
#Using a class
class Monster(object):
def __init__(self, level, damage, duration):
print self
self.level = level
self.damage = damage
self.duration = duration
def fight(self):
print self
print "The monster's level is ", self.level
print "The monster's damage is ", self.damage
print "The attack duration is ", self.duration
def sleep(self):
print "The monster is tired and decides to rest."
x = Monster(1, 2, 3)
y = Monster(2, 3, 4)
x.fight()
y.fight()
y.sleep()
#just using a function
def fight_func(level, damage, duration):
print "The monster's level is ", level
print "The monster's damage is ", damage
print "The attack duration is ", duration
fight_func(1, 2, 3)
fight_func(5,3,4)
純粋関数バージョンはよりクリーンに見え、同じ結果をもたらします。
ファイトやスリープなど、オブジェクトに対していくつかのメソッドを作成して呼び出すことができるクラスの主な価値はありますか?