该游戏非常简单,非常适合像我这样的新人学习。我们可以通过该游戏来了解Python基础中的类与对象。 步骤如下。
1.定义“类”
class Creature():#首字母要大写,冒号不能缺
2.初始化
初始化类Creature,为它增加属性,这里就为其增加了hp这个属性,也可以增加更多属性,根据需要添加。
def __init__(self,hp):
self.hp=hp
复制代码
3.定义函数
在写程序时我们会反复用到相同的一段代码,通过定义函数可以极大的减少代码量和我们的时间。这里就定义了人物的攻击,血量,判断是否活着和显示血量的函数。
def attack(self):
attack_value=random.randint(0,10)
return attack_value
def not_dead(self):
if self.hp<=0:
return False
else:
return True
def nowhp(self,attack_value):
self.hp=self.hp-attack_value
def show_stastic(self):
print('its hp is {}'.format(self.hp))
复制代码
4.创建实例对象
类定义并不是一个对象,只是一个蓝图。现在来真正的“盖房子”。在这里,我创建二个对象“pleyer”,“enemy”,并给他们赋予了hp这个属性的值。类与对象可以比作类是一种物种,像狗,而对象是不同种类的狗。我们通过对类进行修改可以改变对象的属性,而对单独对象进行修改却无法改变其他对象。
pleyer=Creature(100)
enemy=Creature(120)
复制代码
5.实现小游戏
在这,我定义了玩家可以做出攻击(A)和防御(D)二种选择,二种选择会造成不同的反应。
while pleyer.not_dead() and enemy.not_dead():
pleyer.show_stastic()
enemy.show_stastic()
choose=input('A or D')
if choose=='A':
pleyer.attack_value=pleyer.attack()
enemy.attack_value=enemy.attack()
pleyer.nowhp(pleyer.attack_value)
enemy.nowhp(pleyer.attack_value)
elif choose=='D':
enemy.attack_value = enemy.attack()*0.1
pleyer.nowhp(enemy.attack_value)
if pleyer.not_dead():
print('you win!')
else:
print('you lose!')
复制代码
结语
为了简单明了,在这我只设置了HP和攻击防御,感兴趣的话,可以继续添加MP和各种技能,让游戏变得更加有趣。