Python 当我有一个二维列表时,如何生成一个随机选择?

Python 当我有一个二维列表时,如何生成一个随机选择?,python,numpy,Python,Numpy,如果像这样的列表:L=[(1,2)、(2,2)、(3,0)] 如果我想随机选择L的一个元素,它会返回一个错误,告诉我L的元素必须是一维的。那么,当元素不是一维时,我应该如何使用random.choice呢 将numpy导入为np L=[(1,2)、(2,2)、(3,0)] re=np.随机选择(L) 当我尝试上面的代码时,它报告错误一个简单的解决方案是对列表进行随机索引,而不是元素本身: import numpy as np L = [(1, 2), (2, 2), (3, 0)] rando

如果像这样的列表
:L=[(1,2)、(2,2)、(3,0)]
如果我想随机选择L的一个元素,它会返回一个错误,告诉我L的元素必须是一维的。那么,当元素不是一维时,我应该如何使用random.choice呢

将numpy导入为np
L=[(1,2)、(2,2)、(3,0)]
re=np.随机选择(L)

当我尝试上面的代码时,它报告错误

一个简单的解决方案是对列表进行随机索引,而不是元素本身:

import numpy as np
L = [(1, 2), (2, 2), (3, 0)]
random_index = np.random.choice(len(L))
re = L[random_index]

numpy是一个矩阵库,因此它将L与2D数组混淆。请改用内置随机模块:

import random
L = [(1, 2), (2, 2), (3, 0)]
re = random.choice(L)

如果这解决了你的问题,请接受答案。