Python random(随机)模块

>>>import random
>>>random.random()    #[0,1)中的随机浮点数
0.02343375500378797
>>>random.randint(1, 10)    #[x, y]中的随机整数
8
>>>L = [1, 2, 3, 4,]
>>>random.shuffle(L)    #就地打乱
>>>L
[2, 1, 3, 4]
>>>random.choice(L)    #选择随机一项
2
>>> random.sample(L, 2)    #不重复地选择多项
[1, 3]
>>> [random.choice(L) for _ in range(4)]    #可重复地选择多项,反复调用random.choice
[4, 4, 3, 4]

random模块实际上生成的基于一种内部状态的确定性的伪随机数。虽然是伪随机数,但是已经能够满足大部分统计分析的需求了,大胆用吧!如果你想得到可重复的结果,可用random.seed()生成随机数种子。

>>> random.seed(8)
>>> random.random()
0.2267058593810488
>>> random.seed(8)
>>> random.random()
0.2267058593810488

2015年5月30日更新