通过int移动列表

时间:2016-12-16 10:44:24

标签: python

我有两个列表:D_Roll和Space,因此:

D_Roll = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
Space = list(range(1,37))

我想要的是取随机D_Roll的值,即

x = random.choice(D_Roll)

并将其添加到Space列表的当前索引中。

所以:D_Roll产生9,我希望Space移动到索引8。

我以为我可以做类似的事情:

Current_Space = {Space : Space + x in Space}

但它不允许使用int。

如何沿列表索引移动?

2 个答案:

答案 0 :(得分:1)

如果您想要列表中出现在'x'的项目的值,请尝试

import random

D_Roll = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
Space = list(range(1,37))

x = random.choice(D_Roll)

Current_Space = Space[x-1]

#check the output
print(x)
print(Current_Space)

如果您想以space的值开头,然后转到新的随机值,请尝试

import random

Original_Space = 5 #set to what you want

D_Roll = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
Space = list(range(1,37))

x = random.choice(D_Roll)

Current_Space = Space[(Original_Space +x -1)]

#check input and output
print(Original_Space)
print(x)
print(Current_Space)

注意:此代码可能会使您的新值超出space的范围。您可以添加if语句来检查并从列表的开头

开始

答案 1 :(得分:1)

您可以直接访问索引。

Current_Space = Space[random.choice(D_Roll) - 1]  # minus one cuz 0-index