Assignment5-类与对象作业出现问题

这次是做了一个类与对象的问题,但问题主要出错不在类与对象上面,在别的地方。在每一次最后的输出,总会重复再次进行一次战斗。这让我感到疑惑。

最后发现是while的问题

while Fight(new_hero,LB) == 1:
print("新建英雄中")
print("***********************************")
i += 1
new_hero = Hero("hero"+str(i), 15, 30, "反吕联盟")
heros["hero"+str(i)] = new_hero
new_hero.get_inf()
print("***********************************")
LB.get_inf()
fight(new_hero,LB)

实际上在while语句的时候已经执行了一次fight,所以需要把最后一行的fight给删去。。。虽然我也不明白为啥会这样)

然后自己又瞎编了一个代码试了一下

def Acond(ad):
ad = 1
print("acdfg")
return 1

ad = 0
b = 4
while Acond(ad) == 1:
print("yes")
if (b<5):
break

out:acdfg

  yes

[Finished in 0.1s]

所以可以得出,while的条件表达式如果是某个函数,它会将这个函数给执行一次,就酱。

猜你喜欢

转载自www.cnblogs.com/dly-pythonstudy/p/12335347.html