迭代搜索循环列表

时间:2016-12-15 03:05:16

标签: python arrays list loops iteration

我目前正在学习如何使用Python,我正在尝试构建一个Monopoly模拟器(对于初学者,我只是想模拟一个玩家如何在棋盘上移动)。

我如何迭代地浏览董事会职位列表:例如。范围(0,39)?因此,如果玩家当前处于第35位并且掷出6,则他最终位于第1位。

希望你能帮忙!一切顺利:)

4 个答案:

答案 0 :(得分:3)

您想要查看模数/余数运算符%。

https://en.wikipedia.org/wiki/Modulo_operation

  

例如,表达式" 5 mod 2"将评估为1,因为5除以2得到2的商和1的余数,而" 9 mod 3"将评估为0,因为9乘3的除数为3,余数为0;在乘以3次后,没有什么可以减去9。

您可以使用此功能自动处理用户"环绕"董事会。

答案 1 :(得分:3)

您可以使用%运算符,如上面的答案所述。例如 -

Position        Place
0               Go
1               Mediterranean Avenue
...
35              Short Line
36              Chance
37              Park Place
38              Luxury Tax
39              Boardwalk

现在,如果用户位于第35位(短线)并且掷出6,他们的新位置将是:

Old_Position = 35
Roll         = 6
New_Position = (35 + 6) % 40 = 1

所以他们现在将在位置1或地中海大道上。

答案 2 :(得分:1)

没关系,我自己找到了答案。我一定是在点头。以当前字段为例,做出模数,给出答案。

playerField = ((playerField + random.choice(diceRoll)%40)

作品。

答案 3 :(得分:1)

你可以减去从玩家到棋盘末端的距离滚动的数字。

如果差异小于0,则将玩家送回棋盘的开头并将差异的绝对值添加到玩家的位置。