#46
for i in [0,1,2]:
while wells[i].water_level < wells[i].max_water_level:
elephants[i].spray_at(wells[i])
#47
for obstacle in obstacles:
if obstacle.is_ice() and obstacle.is_on_ground():
dragon.fire_at(obstacle)
#48
for obstacle in obstacles:
if obstacle.is_on_ground():
if obstacle.is_ice():
dragon.fire_at(obstacle)
else:
dragon.smash(obstacle)
#49
for obstacle in obstacles:
if obstacle.is_box() and obstacle.is_on_ground():
dragon.smash(obstacle)
#50
for obstacle in obstacles:
if obstacle.is_box() or obstacle.is_fence():
dragon.smash(obstacle)
#51
for obstacle in obstacles:
if obstacle.is_ice():
dragon.fire_at(obstacle)
else:
dragon.smash(obstacle)
#52
#提示:使用两个if语句(而不是if else语句)。
for obstacle in obstacles:
if obstacle.is_on_ground() and obstacle.is_ice():
dragon.fire_at(obstacle)
if obstacle.is_box() or obstacle.is_fence():
dragon.smash(obstacle)
#53
if not well.crocodile.mouth_closed:
well.crocodile.toggle()
#不要忘记填充井。
while well.water_level < well.max_water_level:
elephant.spray_at(well)
#54
for well in wells:
#print(well.crocodile.mouth_closed)
if not well.crocodile.mouth_closed:
well.crocodile.toggle()
#55
for i in range(4):
while wells[i].water_level < wells[i].max_water_level:
elephants[i].spray_at(wells[i])
if not wells[i].crocodile.mouth_closed:
wells[i].crocodile.toggle()
#56
for obstacle in obstacles:
if not obstacle.is_on_ground() and obstacle.is_ice():
dragon.fire_at(obstacle)
#57
#提示:你不能使用for循环。
while well_1.water_level < well_1.max_water_level:
elephant_2.spray_at(well_1)
while well_2.water_level < well_2.max_water_level:
elephant_3.spray_at(well_2)
while well_3.water_level < well_3.max_water_level:
elephant_1.spray_at(well_3)
#58
def fill_well(well, elephant):
while well.water_level < well.max_water_level:
elephant.spray_at(well)
#使用elephant.spray_at来填充井
fill_well(well_1, elephant_2)
fill_well(well_2, elephant_3)
fill_well(well_3, elephant_1)
#再调用fill_well两次以填充另外两个井。
#59
#定义函数fill_well将有
#一个大象在井边喷水。
def fill_well(elephant, well):
while well.water_level < well.max_water_level:
elephant.spray_at(well)
#调用该函数四次,
#每次都有不同的井和大象。
fill_well(elephant_1,well_1)
fill_well(elephant_2,well_2)
fill_well(elephant_3,well_3)
fill_well(elephant_4,well_4)
#60
def fill_well(well, elephant):
while well.water_level < well.max_water_level:
elephant.spray_at(well)
if not well.crocodile.mouth_closed:
well.crocodile.toggle()
#检查是否需要合上鳄鱼的嘴
#修复此函数后,此代码是正确的。
fill_well(wells[0], elephants[1])
fill_well(wells[1], elephants[3])
fill_well(wells[2], elephants[2])
fill_well(wells[3], elephants[0])