1、python中的random函数
random() 方法返回随机生成的一个实数,它在[0,1)范围内
1 2 3 4 5 6 7 8 |
import random random.random() #randint函数,返回指定范围的一个随机整数,包含上下限 random.randint(0,99)#返回0~99之间的整数 #randrange函数,randrange(0,101,2)可以用来选曲0~100之间的偶数 |
2、random.seed(int)
给随机数对象一个种子值,用于产生随机序列。
对于同一个种子值的输入,之后产生的随机数序列也一样。
通常是把时间秒数等变化值作为种子值,达到每次运行产生的随机系列都不一样
seed() 省略参数,意味着使用当前系统时间生成随机数
1 2 3 4 5 6 7 8 9 10 11 |
random.seed(10) print random.random() #0.57140259469 random.seed(10) print random.random() #0.57140259469 同一个种子值,产生的随机数相同 print random.random() #0.428889054675 random.seed() #省略参数,意味着取当前系统时间 print random.random() random.seed() print random.random() |
3、随机正态浮点数random.uniform(u,sigma)
1 2 |
print random.uniform(1,5) |
4、按步长随机在上下限范围内取一个随机数
1 2 |
#random.randrange(start,stop,step) print random.randrange(20,100,5) |
5、随机选择字符
1 2 3 4 5 6 7 8 9 |
#随机的选取n个字符 print(random.sample('abcdefghijk',3)) #随机的选取一个字符 print(random.choice('af/fse.faek``fs')) #随机选取几个字符,再拼接成新的字符串 print string.join(random.sample('abcdefhjk',4)).replace(" ","") |
6、random.shuffle
对list列表随机打乱顺序,也就是洗牌
shuffle只作用于list,对str会报错,比如‘abcdfed’,
而[‘1’,‘2’,‘3’,‘5’,‘6’,‘7’]可以
1 2 3 4 5 6 7 8 9 10 |
item1=[1,2,3,4,5,6,7] print item1 random.shuffle(item1) print item1 item2=['1','2','3','5','6','7'] print item2 random.shuffle(item2) print item2 |
7、numpy模块中的randn和rand函数
numpy.random.randn(d0,d1,…,dn),正太随机
numpy.random.rand(d0,d1,…,dn),选择[0,1]范围内的随机数
1 2 3 4 5 6 7 8 9 |
import numpy numpy.random.randn(2,3) array([[ 1.62434536, -0.61175641, -0.52817175], [-1.07296862, 0.86540763, -2.3015387 ]]) numpy.random.rand(2,3) array([[0.41919451, 0.6852195 , 0.20445225], [0.87811744, 0.02738759, 0.67046751]]) |
浏览量: 4