在 Python 中随机生成二维列表

ds_*_*Sdc 2 python function list

我正在尝试生成 5x5 列表,其中恰好有 10 个放置在 2D 列表中的随机位置。

我想让其余的条目为零。我怎样才能做到?

import random

def randomNumbers():

    mylist=[random.randint(0, 1) for _ in range(5)]
    return mylist
Run Code Online (Sandbox Code Playgroud)

小智 8

你可以这样做

from random import shuffle
def randomNumbers():
    l=[1 for _ in range(10)]+[0 for _ in range(15)]
    shuffle(l)
    lst=[]
    for i in range(0,25,5):
        lst.append(l[i:i+5])
    return lst
Run Code Online (Sandbox Code Playgroud)