RANDOM模块:PYTHON获取随机数
1. random.random
random.random(): 用于生成一个0到1的随机浮点数: 0 <= n < 1.0
例子:
>>> random.random()
0.5306033955417728
>>>
>>> random.random()
0.18916297492906708
2. random.uniform
random.uniform(a, b):
用于生成一个指定范围内的随机浮点数,两个参数其中一个是上限,一个是下限。
如果a > b,则生成的随机数n: a <= n <= b。如果 a <b, 则 b <= n <= a
例子:
>>> random.uniform(12, 3)
10.660863260531373
>>> random.uniform(12, 3)
9.509624305328577
>>> random.uniform(20, 33)
26.852072585122386
>>> random.uniform(20, 33)
32.293501734423174
>>>
3. random.randint
random.randint(a, b),用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,a必须大于等于b, 生成的随机数n: a <= n <= b
例子:
>>> random.randint(20, 33)
25
>>> random.randint(20, 33)
30
>>> random.randint(20, 33)
33
>>> random.randint(20, 20)
20
>>> random.randint(20, 20)
20
5. random.randrange
random.randrange([start], stop[, step]),
从指定范围内,按指定基数递增的集合中获取一个随机数。
如:random.randrange(10, 100, 2),结果相当于从[10, 12, 14, 16, ... 96, 98]序列中获取一个随机数。
random.randrange(10, 100, 2)在结果上与 random.choice(range(10, 100, 2) 等
例子:
>>> random.randrange(10)
9
>>> random.randrange(2,10, 2) #取偶数
6
>>> random.randrange(2,10, 2)
8
>>> random.randrange(1,10, 2) #取奇数
1
>>> random.randrange(1,10, 2)
1
>>> random.randrange(1,10, 2)
7
>>>
6. random.choice
random.choice从序列中获取一个随机元素。
其函数原型为:random.choice(sequence)。参数sequence表示一个有序类型。
sequence在python不是一种特定的类型,而是泛指一系列的类型。list, tuple, 字符串都属于sequence。
例子:
>>> random.choice((1,2,3,4,6))
6
>>> random.choice((1,2,3,4,6))
3
>>> random.choice(abcde121osdsd)
'c'
>>> random.choice("abcde121osdsd")
's'
7. random.shuffle
random.shuffle(x[, random]),用于将一个列表中的元素打乱。
例子:
>>> list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> random.shuffle(list)
>>> print(list)
[9, 6, 1, 10, 5, 4, 3, 8, 2, 7]
>>>
8. random.sample
random.sample(sequence, k),从指定序列中随机获取指定长度的片断。
sample函数不会修改原有序列
例子:
>>> list
[9, 6, 1, 10, 5, 4, 3, 8, 2, 7]
>>> random.sample(list, 6)
[6, 7, 1, 2, 3, 10]
>>>
>>> random.sample(list, 6)
[6, 1, 2, 3, 9, 10]
>>> list
[9, 6, 1, 10, 5, 4, 3, 8, 2, 7] # 原有序列并没有改变