我有一个怪物列表,它可以从中选择
def monsters():
whatMonster = random.randint(0, 25)
monster = pickMonster[whatMonster]
print(monster.Name)
print("life =", monster.life)
print("EXP =", monster.exp)
return monster
def Battle(monster):
def attack(monster):
print(monster.Name)
print("life =", monster.life)
print("EXP =", monster.exp)
print()
print("level", player.lvl)
print("HP =", player.life)
print("Ammor =", player.Def)
pExp = 0
pExp = monster.exp + pExp
action = input(" will you [A]ttack or [R]un ")
if action == "A":
print("you attack")
attack(monster)
if action == "R":
print("You runaway")
return attack
return monster
def main():
loop = True
header()
print()
while loop == True:
game_loop()
print()
monsters()
print()
player()
Battle(monster)
print()
它向我发送了以下类型错误:attack()缺少1个必需的位置参数:“monster”指向我,我无法理解这意味着什么
您的
attack()
函数采用单个位置参数monster
(您在定义函数时规定了此要求):当你这样称呼它时:
您未能通过该参数,导致错误。相反,在调用函数时,需要将
monster
对象传递给该函数:从代码的其余部分来看,您似乎可以这样做:
相关问题 更多 >
编程相关推荐