【问题标题】:Select a random element from a 2d array list in python从python中的二维数组列表中选择一个随机元素
【发布时间】:2021-01-24 09:27:43
【问题描述】:

我目前有一个由这段代码生成的二维数组:

for y in range(width):
    self.grid.append([])
    for x in range(width):
        self.grid[y].append(Cell(x, y))

如果我想随机选择一个单元格,我会怎么做? random.choice 似乎不起作用。

【问题讨论】:

标签: python multidimensional-array


【解决方案1】:

你可以这样做

yCoord = random.randrange(width)
xCoord = random.randrange(width)
randomCell = self.grid[yCoord][xCoord]

如果您确实想使用random.choice,则必须使用它两次,因为第一次调用将返回一个单元格数组,然后第二次调用将返回一个单元格元素。

【讨论】:

    【解决方案2】:

    你可以使用:

    s = list[random.randint(0, len(list) - 1]
    rn = s[random.randint(0, len(s) - 1]
    

    您需要使用双线,因为您需要找到子列表的长度。我不知道也不认为存在任何直接的方法。

    【讨论】:

      猜你喜欢
      • 2020-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-11
      • 1970-01-01
      • 1970-01-01
      • 2018-11-11
      相关资源
      最近更新 更多