1、python中的random函数
random() 方法返回随机生成的一个实数,它在[0,1)范围内
语法:
import random random.random()
randint函数,返回指定范围的一个随机整数,包含上下限
import random random.randint(0,99)#返回0~99之间的整数
randrange函数,randrange(0,101,2)可以用来选曲0~100之间的偶数
2、random.seed(int)
- 给随机数对象一个种子值,用于产生随机序列。
- 对于同一个种子值的输入,之后产生的随机数序列也一样。
- 通常是把时间秒数等变化值作为种子值,达到每次运行产生的随机系列都不一样
- seed() 省略参数,意味着使用当前系统时间生成随机数
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)
- 随机正态浮点数
print random.uniform(1,5)
4、random.randrange(start,stop,step)
- 按步长随机在上下限范围内取一个随机数
print random.randrange(20,100,5)
5、随机选择字符
- 随机的选取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\']可以
item=[1,2,3,4,5,6,7] print item random.shuffle(item) print item 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]范围内的随机数
In [55]: import numpy In [56]: numpy.random.randn(2,3) Out[56]: array([[ 1.62434536, -0.61175641, -0.52817175], [-1.07296862, 0.86540763, -2.3015387 ]]) In [57]: numpy.random.rand(2,3) Out[57]: array([[0.41919451, 0.6852195 , 0.20445225], [0.87811744, 0.02738759, 0.67046751]])