# coding:utf-8 import numpy # 第一种产生的随机数都相同 num = 0 while(num < 4): numpy.random.seed(1) print numpy.random.random() num += 1
运行结果:
0.417022004703
0.417022004703
0.417022004703
0.417022004703
进程已结束,退出代码0
# 第二种产生的随机数不相同 num = 0 numpy.random.seed(5) while(num < 5): print(numpy.random.random()) num += 1
运行结果:
0.22199317109
0.870732306177
0.206719155339
0.918610907938
0.488411188795
进程已结束,退出代码0
其实最主要的应该是第三种:
# 第三种 numpy.random.seed(5) num = 0 while(num < 5): print(numpy.random.random()) num += 1 print "--------分割线-----------" numpy.random.seed(5) num = 0 while(num < 5): print(numpy.random.random()) num += 1
运行结果:
0.22199317109
0.870732306177
0.206719155339
0.918610907938
0.488411188795
--------分割线-----------
0.22199317109
0.870732306177
0.206719155339
0.918610907938
0.488411188795
进程已结束,退出代码0
可以看到,第三种使用方法里面,当seed()里面的值相同,运行两次相同的程序时,产生的随机数也相同,也就是说,当一个程序需要生成随机数或者随机点,可以利用这种随机种子,来保证程序运行两次生成的随机数或者随机点的大小或者位置完全相同。