我正在用Python进行一场海龟赛跑,我们应该重新设计基本代码。 我的想法是创造一个领奖台,让前三名获奖者登上领奖台。 我设法让第一名获奖者登上领奖台,但现在我不知道如何测量海龟之间的距离,并找出谁在第二和第三名。 有什么想法吗? 这是最终输出: the end of the game
while True:
turtle_winner = choice([maria, jaquina, toino, celeste, tia])
turtle_winner.forward(randint(1, 5))
if turtle_winner.xcor() > 70:
break
turtle_winner.shapesize(3)
screen.ontimer(winner_podium, 250)
我可能会使用字典而不是顶级变量来包含跑步者字段:
输出
结果包括距离,以便您可以看到它正在工作。如果只需要名称,可以按照@SimonR的(+1)解决方案简化代码:
以及抛出
import
的itemgetter
(这只是为了避免在平局时出现错误。)这里有一个最简单的例子,说明您可能如何做到这一点。我创建了一个带有随机位置的海龟模型作为演示。请注意,我已经给了turtles名称属性,否则您的排名将只是对象本身的名称,这不是很可读。重要的部分是如何根据海龟的
xcor
属性(从第二行到最后一行)对海龟列表进行排序输出:
希望这能让你开始
试试这个:
相关问题 更多 >
编程相关推荐