Ash*_*ary 11
您可以使用range()
生成整数列表,然后应用于random.shuffle()
该列表.
In [141]: lis = range(1,11)
In [142]: lis
Out[142]: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
In [143]: random.shuffle(lis)
In [144]: lis
Out[144]: [1, 4, 3, 10, 8, 2, 6, 9, 5, 7]
Run Code Online (Sandbox Code Playgroud)
help()
上range()
:
range([start,] stop [,step]) - >整数列表
返回包含整数算术级数的列表.range(i,j)返回[i,i + 1,i + 2,...,j-1]; start(!)默认为0.当给出step时,它指定增量(或减量).例如,range(4)返回[0,1,2,3].省略了终点!这些正是4个元素列表的有效索引.
如果你想要在给定范围内的整个人口,As @Ashwini建议你可以使用random.shuffle
如果您对人口的一部分感兴趣,可以期待使用random.sample
>>> random.sample(range(1,10),5)
[3, 5, 2, 6, 7]
Run Code Online (Sandbox Code Playgroud)
您也可以使用它来模拟random.shuffle
>>> random.sample(range(1,10),(10 - 1))
[4, 5, 9, 3, 2, 8, 6, 1, 7]
Run Code Online (Sandbox Code Playgroud)
注意,在random.shuffle上使用random.sample的优点是,它可以在迭代器上工作,所以在
range()
为列表xrange
归档时间: |
|
查看次数: |
8714 次 |
最近记录: |