我想创建一个以这种方式制作的列表:
列表的长度是我决定的数字,比方说s(相当大,不夸张)
条目全部为零,除了一个,其值为n
值为n的条目可能在中间,但我希望它在列表中随机出现,即如果我再次运行程序(或者使用某种循环),它会给我一个向量不同于0的条目在另一个位置。例如。 v1 = [0,0,n,0],v2 = [n,0,0,0]等
我该怎么做?
这是我尝试过的4号列表:
s = [0,0,0,0]
r = random.random()
intr = int(r*len(s))
s[intr] = n
由于
答案 0 :(得分:-1)
>>> from random import randint
>>> n = 10
>>> a = [0]*n // initialise array a wwith exactly n zeros
>>> a
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
>>> i = randint(0,n-1) // get random number from 0 to n-1
>>> i
1
>>> a[i]=n //assign a[i] to n
>>> a
[0, 10, 0, 0, 0, 0, 0, 0, 0, 0]