我有一个填充100个整数的矩阵。这些整数是0,1,2和2的混合。如何选择此矩阵的随机0?这个问题有功能吗?
编辑:我还需要知道矩阵中这个随机0(零)的原点位置,因为我之后必须将这个零与另一个值交换
答案 0 :(得分:2)
从您描述问题的方式看,以下代码将如下所示:
print(0)
答案 1 :(得分:1)
假设您的矩阵是以下形式的数组数组:
A = [[0, 0, 1],
[0, 1, 0]]
我还假设您想要从元素为0的所有索引对统一绘制一对随机索引。如果您选择元素,则每次都为0。你可以这样做:
import random
A = # your matrix
# generate the pairs
zero_indexes = [(i, j)
# for each index along each axis
for i in range(len(A))
for j in range(len(A[i]))
# keep the pair if it's element is 0
if A[i][j] == 0]
# make a random pick from your pairs
random_zero = random.choice(zero_indexes)
print(random_zero)
更新:您提到想要将此随机选择的0与另一个值交换,这可以通过我的方法完成(这可以添加到上面的块的末尾):
i, j = random_zero
A[i][j] = # your new value