Python:【基础语法】 随机函数
随机函数
函数是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用该方法。
import random
1.random()函数
用途
方法返回随机生成的一个实数,它在[0,1)范围内。
语法
import random
random.random()
参数
- 无
返回值
返回随机生成的一个[0,1)范围内的实数。
实例
>>>import random
>>>random.random()
0.8732120512570916
2.shuffle() 函数
用途
方法将序列的所有元素随机排序。
语法
import random
random.shuffle (list)
参数
- list——列表
返回值
None。
实例
>>>import random
>>>list = [22, 33, 11, 5]
>>>random.shuffle(list)
[33,5,11,22]
3.choice()函数
用途
方法返回一个列表,元组或字符串的随机项。
语法
import random
random.choice(seq)
参数
- seq——序列:可以是一个列表,元组或字符串。
不可为集合、字典
返回值
返回随机项,可以是随机数、随机元素、随机字符等。
实例
>>>import random
>>>list = [22, 33, 11, 5]
>>>random.choice(list)
22
>>>s="zhangdanshen"
>>>random.choice(s)
'g'
4.uniform()函数
用途
方法将随机生成下一个实数,它在[x,y]范围内。
语法
import random
random.uniform(x,y)
参数
- x -- 随机数的最小值,包含该值。
- y -- 随机数的最大值,包含该值。
返回值
返回一个浮点数 N
如果 x<y 则 x <= N <= y,如果 y<x 则y <= N <= x。
实例
>>>import random
>>>random.uniform(3,10)
4.94823663759113
>>>random.uniform(15,10)
14.580550032035848
5.randrange()函数
用途
方法返回指定递增基数集合中的一个随机数,基数默认值为1。
该随机数可拥有一定的特性
语法
import random
random.randrange ([start,] stop [,step])
参数
- start -- 指定范围内的开始值,包含在范围内。
- stop -- 指定范围内的结束值,不包含在范围内。
- step -- 指定递增基数。
返回值
从给定的范围返回随机项,数字类型为整型。
实例
>>>import random
>>>#从1-100中随机选取一个奇数
>>>random.randrange(1, 100, 2)
79
>>>#从0-100中随机选取一个偶数 范围:[0,100]或[0,101)
>>>random.randrange(0, 101, 2)
22
>>>#从0-100中随机选取一个能被5整除的数 范围同上
>>>random.randrange(0, 101, 5)
60
>>>#从1-100中随机选取一个能被5整除后余1的数 范围[1,100]或[1,101)
>>>random.randrange(1, 101, 5)
36
6.randint()函数
用途
方法返回指定范围内的整数。
语法
import random
random.randint(start,stop)
参数
- start -- 指定范围内的开始值,包含在范围内。
- stop -- 指定范围内的结束值,包含在范围内。
返回值
从给定的范围返回随机项,数字类型为整型。
实例
>>>import random
>>>random.randint(1,9)
9
7.seed()函数
用途
方法改变随机数生成器的种子,可以生成相同的随机数。
语法
import random
random.seed([x])
调用 random.random()
生成随机数时,每一次生成的数都是随机的。但是,当预先使用 random.seed(x)
设定好种子之后,其中的 x 可以是任意数字、字符串等,如10,这个时候,先调用它的情况下,使用 random()
生成的随机数将会是同一个。且这个种子下的随机数一直不变
参数
- '[x]' -- 可选参数,如果没设置,Python会自动选择seed。
x表示改变随机数生成器的种子seed。
返回值
无
实例
>>>import random
>>>random.random()
>>>#使用字符串 种子生成随机数
>>>random.seed("sdada")
>>>random.random()
>>>#使用字符串 种子生成随机数
>>>random.seed("sdada")
>>>random.random()
>>>#使用整数10 种子生成随机数
>>>random.seed(10)
>>>random.random()
>>>#使用字符串 种子生成随机数
>>>random.seed("sdada")
>>>random.random()
0.23646534233227556
0.6227463857248545
0.6227463857248545
0.5714025946899135
0.6227463857248545